 
             if shouldResetScrollToBottom {
                 if self.scrollToBottomButtonIsVisible {
-                    self.scrollToBottomButtonIsVisible = false
-                    self.isScrollingToBottom = false
-                    self.scrollToBottomButtonIsVisible = true
+                    self.showScrollToBottom(forceUpdate: true)
                 }
             }
 

        ])
    }

    // MARK: Pagination

    func loadNextPageIfNeeded() {

    @objc internal func scrollToBottom(_ animated: Bool = false) {
        let offset = CGPoint(x: 0, y: -composerView.frame.height)
        collectionView.setContentOffset(offset, animated: animated)
        hideScrollToBottom()
    }

    internal func resetScrollToBottomButtonPosition() {
        guard !isScrollingToBottom else { return }
        if !chatLogIsAtBottom() {
            showScrollToBottom()
        } else {
            hideScrollToBottom()
        }
    }

    private func chatLogIsAtBottom() -> Bool {
