Fix macOS 26+ dock icon losing system theming (#8816) - #11577
Conversation
On macOS 26 (Tahoe) the runtime dock icon override suppressed the system's Liquid Glass / tinted icon theming. Skip setting a custom dock icon on macOS 26 and later so the themed bundle icon is used. Add is_mac_os_at_least() using NSProcessInfo so the check is a lower bound (covers 27+) and works regardless of the build SDK. Fixes bambulab#8816
|
Thanks a lot for your suggestion and for taking the time to raise this. We’ve discussed it with our interaction design team, and we’re aligned that this change is not necessary at the moment, so we won’t move forward with it in this PR. |
|
Thank you for your response. I am not quite sure why this change is not considered necessary, and I would appreciate it if you could explain how you came to this conclusion. Are any other steps planned to address the icon color mismatch on macOS? Looking forward to hearing from you. |
|
from interaction design team: @d3ns0n Thank you for following up and for giving us the opportunity to clarify. Our decision is based on brand consistency rather than technical feasibility. Bambu Lab’s visual identity, including the approved colors and shape of its brand symbols, is a core brand asset and should not be altered across different platforms or system themes. We really appreciate you bringing this to our attention and helping us improve the product experience. |
|
@XinZhangBambu Thank you for the answer. Then I'd suggest applying the brand colors to the closed-state icon as well, so both states stay consistent. Would you be interested in a PR for that? |




Problem
On macOS 26 (Tahoe) the Bambu Studio dock icon does not respect the system's
new icon theming (Liquid Glass / Tinted / Clear / Dark). When the app launches
it loses the themed appearance and shows a plain raster icon instead.
Root cause: on startup
MainFramesets a custom dock icon at runtime via awxTBI_DOCKtaskbar icon (BambuStudio-mac_256px.ico). This calls-[NSApp setApplicationIconImage:]under the hood, which overrides the systemtheming that macOS applies to the app bundle icon (
Icon.icns).Fixes #8816
Change
Skip the runtime dock-icon override on macOS 26 and later, so the system-themed
bundle icon is used instead. Behaviour on macOS < 26 is unchanged.
Slic3r::is_mac_os_at_least(int major)inMacUtils.mm, implemented with-[NSProcessInfo isOperatingSystemAtLeastVersion:]. This is a lower-boundcheck, so future releases (27+) are covered automatically, and it works
regardless of the SDK the project is built with.
#ifdef __APPLE__dock-icon initialization inMainFramewithif (!is_mac_os_at_least(26)).Testing
(verified with the "Tinted" style — the running app's dock icon stays tinted
instead of reverting to the raster icon).
#ifdef __APPLE__, so non-Apple builds areunaffected.