From 829bf7512a5850564c9a0f65dd2b005f190f003a Mon Sep 17 00:00:00 2001 From: Julian Mutter Date: Fri, 6 Feb 2026 20:16:00 +0100 Subject: [PATCH] Only call setFullScreen if that changes fullscreen state --- lib/features/home/home_page.dart | 13 ++++++++++--- lib/features/sheet_viewer/sheet_viewer_page.dart | 6 ++++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/lib/features/home/home_page.dart b/lib/features/home/home_page.dart index 2083099..15aed53 100644 --- a/lib/features/home/home_page.dart +++ b/lib/features/home/home_page.dart @@ -48,7 +48,9 @@ class _HomePageState extends State with RouteAware { super.initState(); // Exit fullscreen when entering home page - FullScreen.setFullScreen(false); + if (FullScreen.isFullScreen) { + FullScreen.setFullScreen(false); + } // Subscribe to route changes WidgetsBinding.instance.addPostFrameCallback((_) { @@ -71,14 +73,19 @@ class _HomePageState extends State with RouteAware { @override void didPush() { - FullScreen.setFullScreen(false); + // Exit fullscreen when entering home page + if (FullScreen.isFullScreen) { + FullScreen.setFullScreen(false); + } super.didPush(); } @override void didPopNext() { // Exit fullscreen when returning to home page - FullScreen.setFullScreen(false); + if (FullScreen.isFullScreen) { + FullScreen.setFullScreen(false); + } super.didPopNext(); } diff --git a/lib/features/sheet_viewer/sheet_viewer_page.dart b/lib/features/sheet_viewer/sheet_viewer_page.dart index e05eb22..97ca6c7 100644 --- a/lib/features/sheet_viewer/sheet_viewer_page.dart +++ b/lib/features/sheet_viewer/sheet_viewer_page.dart @@ -65,7 +65,9 @@ class _SheetViewerPageState extends State _rightDrawingController = DrawingController(maxHistorySteps: 50); FullScreen.addListener(this); - FullScreen.setFullScreen(widget.config.fullscreen); + if (FullScreen.isFullScreen != widget.config.fullscreen) { + FullScreen.setFullScreen(widget.config.fullscreen); + } _documentLoaded = _loadPdf(); } @@ -210,7 +212,7 @@ class _SheetViewerPageState extends State } void _toggleFullscreen() { - FullScreen.setFullScreen(!widget.config.fullscreen); + FullScreen.setFullScreen(!FullScreen.isFullScreen); } // ---------------------------------------------------------------------------