From 6b437fb5fcfb47c695658216ab628b1e5a759c39 Mon Sep 17 00:00:00 2001 From: XMLHexagram Date: Tue, 10 Dec 2024 20:15:40 +0100 Subject: [PATCH] feat(macOS): Hide window control buttons when enable cover wall in zune and phone size --- .../title_bar/window_frame_for_macos.dart | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/lib/widgets/title_bar/window_frame_for_macos.dart b/lib/widgets/title_bar/window_frame_for_macos.dart index 0d8cf2085..b51580a1d 100644 --- a/lib/widgets/title_bar/window_frame_for_macos.dart +++ b/lib/widgets/title_bar/window_frame_for_macos.dart @@ -29,7 +29,8 @@ class _WindowFrameForMacOSState extends State { void didChangeDependencies() { super.didChangeDependencies(); _fullscreen = Provider.of(context, listen: false); - _responsiveProvider = Provider.of(context, listen: false); + _responsiveProvider = + Provider.of(context, listen: false); _fullscreen.addListener(updateWindowControlButtons); _responsiveProvider.addListener(updateWindowControlButtons); @@ -45,13 +46,24 @@ class _WindowFrameForMacOSState extends State { } void updateWindowControlButtons() { - if (_responsiveProvider.currentDeviceType == DeviceType.band || - _responsiveProvider.currentDeviceType == DeviceType.dock) { + var currentDeviceType = _responsiveProvider.currentDeviceType; + if (currentDeviceType == DeviceType.band || + currentDeviceType == DeviceType.dock) { MacOSWindowControlButtonManager.shared.setHide(); - } else { - MacOSWindowControlButtonManager.shared.setShow(); - MacOSWindowControlButtonManager.shared.setVertical(); + return; } + + if (( + currentDeviceType == DeviceType.zune || + currentDeviceType == DeviceType.phone) && + $router.path == "/cover_wall") { + MacOSWindowControlButtonManager.shared.setHide(); + return; + } + + MacOSWindowControlButtonManager.shared.setShow(); + MacOSWindowControlButtonManager.shared.setVertical(); + return; } @override