Fix tab strip height issue in macOS 26 full screen mode
Moderate
Commit Hash:
58968d577e9635a86e2cb8b92b9332e2c8153dc3
Commit Time: 2025-08-14 00:26:52+00:00
Impact Level: Moderate
Generated By: webview2-upstream-sentry
Upstream Review:
View Upstream Review 🔗
📋 Summary
This submission primarily addresses the issue of a horizontal white gap caused by an excessively high tab strip area in macOS 26 fullscreen mode. The fix involves setting the main window’s toolbar style to NSWindowToolbarStyleUnifiedCompact in the ImmersiveModeTabbedControllerCocoa::Init() method, which is the required style for AppKit to correctly recognize the fullScreenMinHeight property of the titlebar accessory. Additionally, the toolbar style is reset to NSWindowToolbarStyleAutomatic in the destructor. This change only involves the setting of the toolbar style and does not alter the core business logic.
🎯 Impact Analysis
This change has a moderate impact on WebView2Mac. Since WebView2Mac inherits from remote_cocoa::NativeWidgetNSWindowBridge via HostingNSWindowBridge and may use similar immersive mode functionality, this change could affect WebView2Mac’s fullscreen display behavior on macOS 26. Specific impacts include: 1) If WebView2Mac uses a similar immersive mode controller or title bar accessory view, changes to the toolbar style may affect its layout and display; 2) Although comments indicate this is a no-op for versions prior to macOS 26, if Chrome begins to use NSToolbarItem in the future, its height will be affected by this style change; 3) This may alter the visual presentation of WebView2Mac in fullscreen mode, especially the height calculation of the title bar area. It is recommended to test WebView2Mac’s fullscreen mode functionality on macOS 26 to ensure there are no layout issues.
Impacted Classes:
ImmersiveModeTabbedControllerCocoa
ImmersiveModeControllerCocoa
remote_cocoa::NativeWidgetNSWindowBridge