     
     func updateUI() {
         tableView.reloadData()
+        tableView.layoutIfNeeded()
         
         updateLinesCountLabels()
         updateContentLayout()

        if isToolbarActive {
            if tableView.contentOffset.y == -topInsetSmall {
                let offset = CGPoint(x: tableView.contentOffset.x, y: -topInsetLarge)
                tableView.setContentOffset(offset, animated: true)
            }
        } else {
            if tableView.contentOffset.y == -topInsetLarge {
                let offset = CGPoint(x: tableView.contentOffset.x, y: -topInsetSmall)
                tableView.setContentOffset(offset, animated: true)
            }
        }
        tableView.flashScrollIndicators()

    
    var isOnScreen = false {
        didSet {
            if isOnScreen {
                self.updateUI()
            }
            isHidden = !isOnScreen
        }
    }
    
