switch to new window_manager from main

This commit is contained in:
Henry Hiles 2026-10-22 16:06:28 -04:00
commit 44a1ec667e
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs
3 changed files with 102 additions and 97 deletions

View file

@ -88,7 +88,7 @@ class UnifiedPushController extends AsyncNotifier<String?> {
if (notification == null ||
(!isInBackground &&
await windowManager.isFocused().onError((_, _) => true) &&
(WindowManager.instance.getCurrent()?.isFocused ?? true) &&
ref.read(SelectedRoomController.provider) ==
notification.roomId)) {
if (isInBackground) exit(0);

View file

@ -83,14 +83,10 @@ void main(List<String> args) async {
exit(0);
} else {
if (Platform.isLinux || Platform.isMacOS || Platform.isWindows) {
await windowManager.ensureInitialized();
await windowManager.waitUntilReadyToShow(
WindowOptions(
titleBarStyle: TitleBarStyle.hidden,
windowButtonVisibility: false,
),
);
await windowManager.setMinimumSize(Size.square(500));
WindowManager.instance.getCurrent()
?..titleBarStyle = .hidden
..isWindowControlButtonsVisible = false
..minimumSize = Size.square(500).toNative();
}
runApp(

View file

@ -23,14 +23,15 @@ final class const Appbar({
@override
Widget build(BuildContext context, WidgetRef ref) {
Future<void> maximize() async {
final isMaximized = await windowManager.isMaximized();
void maximize() {
final window = WindowManager.instance.getCurrent();
if (window == null) return;
if (isMaximized) {
return windowManager.unmaximize();
if (window.isMaximized) {
return window.unmaximize();
}
return windowManager.maximize();
return window.maximize();
}
return GestureDetector(
@ -39,7 +40,7 @@ final class const Appbar({
.whenOrNull(
data: (settings) => settings.linuxMobileMode
? null
: (_) => windowManager.startDragging(),
: (_) => WindowManager.instance.getCurrent()?.startDragging(),
),
child: AppBar(
leading: leading == null ? null : InkWell(onTap: onTap, child: leading),
@ -62,7 +63,8 @@ final class const Appbar({
false)
IconButton(
tooltip: "Minimize window",
onPressed: windowManager.minimize,
onPressed: () =>
WindowManager.instance.getCurrent()?.minimize(),
icon: const Icon(Icons.minimize),
),
if (!Platform.isLinux)