From 3a849d60c22fed8e6e8c000c385284d099cbbbad Mon Sep 17 00:00:00 2001 From: Jonas Pardeyke Date: Thu, 26 Feb 2026 15:04:12 +0100 Subject: [PATCH] allow other/multiple rightBarButtonItems --- ios/components/MenuComponent.swift | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ios/components/MenuComponent.swift b/ios/components/MenuComponent.swift index 26fd69a..fb81a48 100644 --- a/ios/components/MenuComponent.swift +++ b/ios/components/MenuComponent.swift @@ -4,6 +4,8 @@ import UIKit public final class MenuComponent: BridgeComponent { override public nonisolated class var name: String { "menu" } + private weak var menuBarButtonItem: UIBarButtonItem? + override public func onReceive(message: Message) { guard let event = Event(rawValue: message.event) else { return } @@ -33,7 +35,13 @@ public final class MenuComponent: BridgeComponent { ) button.tintColor = Bridgework.color("Menu", hex: data.colorCode) - viewController?.navigationItem.rightBarButtonItem = button + var rightItems = viewController?.navigationItem.rightBarButtonItems ?? [] + if let old = menuBarButtonItem { + rightItems.removeAll { $0 === old } + } + rightItems.append(button) + menuBarButtonItem = button + viewController?.navigationItem.rightBarButtonItems = rightItems } }