         UserDefaults.standard.set(shouldExpand, forKey: Constants.overflowExpandedUserDefaultsKey)
 
         formatter?.formatBar(self, didChangeOverflowState: (shouldExpand) ? .visible : .hidden)
+
+        overflowToggleItemRTLLeadingConstraint?.isActive = shouldExpand
+        updateOverflowToggleItemRTLConstraints()
     }
 
     private func setOverflowItemsVisible(_ visible: Bool, animated: Bool = true) {

        scrollableStackView.alignment = .center
        scrollableStackView.distribution = .equalSpacing
        scrollableStackView.translatesAutoresizingMaskIntoConstraints = false
    }



        scrollView.alwaysBounceHorizontal = false
        scrollView.translatesAutoresizingMaskIntoConstraints = false
        scrollView.delegate = self
        if layoutDirection == .rightToLeft {
            scrollView.transform = CGAffineTransform(scaleX: -1, y: 1)
        }
        updateScrollViewInsets()
    }

    func updateScrollViewInsets() {
        // Add padding at the end to account for overflow button
        scrollView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: trailingInset)
    }

    /// Sets up the Constraints
    ///
