Skip to content

Add desktop full screen toggle, defaulting to full screen - #130

Open
jdegeest wants to merge 1 commit into
apps4av:masterfrom
jdegeest:fullscreen-toggle
Open

Add desktop full screen toggle, defaulting to full screen#130
jdegeest wants to merge 1 commit into
apps4av:masterfrom
jdegeest:fullscreen-toggle

Conversation

@jdegeest

@jdegeest jdegeest commented Aug 28, 2026

Copy link
Copy Markdown

When setting up AvareX on a Microsoft Surface running Ubuntu/GNOME, I found no way to run the app full screen. This PR adds a toggle button to the map screen for window-managed desktop environments.

The button is gated to Linux, macOS and Windows via Constants.supportsWindowManagement. The choice is persisted under key-full-screen and reapplied at startup, defaulting to on, since the window chrome is wasted space when the app is used as an EFB.

Window handling lives in a new lib/utils/full_screen.dart, which owns the state and exposes a ValueNotifier the button listens to, so the map screen holds no local state of its own.

This introduces a dependency on window_manager. It declares linux/macos/windows only, so it is not registered on Android or iOS, and no mobile plugin registrant is touched by this change.

USER_MANUAL.md is updated in sections 2 (platform availability), 4.3 (map controls) and 14 (path index). I have not regenerated assets/docs/USER_MANUAL.pdf — the regeneration script is macOS-specific and I am on Linux, so the output would differ from your toolchain.

Applies the saved preference at startup.

New FullScreen utility owns the window state, exposing a ValueNotifier the
button listens to, so the map screen holds no local state of its own.
Constants.supportsWindowManagement gates it to linux/macos/windows, and
AppSettings persists the choice under key-full-screen.

Adds a dependency on window_manager, which declares linux/macos/windows
only, so it is not registered on Android or iOS.

USER_MANUAL.md updated in sections 2, 4.3 and 14. assets/docs/USER_MANUAL.pdf
is not regenerated here.
@jdegeest
jdegeest marked this pull request as ready for review August 28, 2026 22:04
@jdegeest

Copy link
Copy Markdown
Author

Verified on Linux, needs verification on OSX/Windows

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant