From 87e059e0f43082a20b2d5a4f4087374ec2f96bbc Mon Sep 17 00:00:00 2001 From: Kiwy Signage Player Date: Tue, 9 Dec 2025 18:53:34 +0200 Subject: [PATCH] updated to corect function the play pause function --- .player_stop_requested | 1 - ...e-whale-desktop-wallpaper-Z3o7FZeI-Ms.webp | Bin 15976 -> 0 bytes media/wp1993621.webp | Bin 60468 -> 0 bytes src/main.py | 53 ++++++++++++++++-- src/signage_player.kv | 2 +- 5 files changed, 49 insertions(+), 7 deletions(-) delete mode 100644 .player_stop_requested delete mode 100644 media/canva-blue-night-sky-cute-whale-desktop-wallpaper-Z3o7FZeI-Ms.webp delete mode 100644 media/wp1993621.webp diff --git a/.player_stop_requested b/.player_stop_requested deleted file mode 100644 index bb64142..0000000 --- a/.player_stop_requested +++ /dev/null @@ -1 +0,0 @@ -User requested exit via password \ No newline at end of file diff --git a/media/canva-blue-night-sky-cute-whale-desktop-wallpaper-Z3o7FZeI-Ms.webp b/media/canva-blue-night-sky-cute-whale-desktop-wallpaper-Z3o7FZeI-Ms.webp deleted file mode 100644 index 5aa0c494860aa4a418a2f24605036f6245331746..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15976 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%0Al>54Alo{x&0DV(RQn+p}y5NrWj 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

    ?f2E%QS?A{)1Dz&|wX5XNj3N1ZKMSqYp^2i_3>$ z-9cfBf8aBE61mZFKQ-{fGJGaWKh=3Wy}f?Q;2aR8?63lX%#gh=pk6ocsVe_UKu3|Kvqx3y&aC zkst16GcM~}ia8jZ%kLJ{?{5N+i+SF=^T3YCdM6|0=N;ZVwpYg>BlN zT{hBzm8-g=m;30=)NkyiXr`S%6r74P7|5!Kw|@=}rc$?iFM4!>Eq}XzB9>8&v`>2y z9`*nbx{MJgGQgY=kxG-o5S-i>>TQy+@F=2yNC^WLy{u0?2#B9^%(FL3X+h>@)kvSG z2APDTMc`M^dH`cB)enzGyKkU^OCrkDT^j7VeIpl4P@TXuaQGF?W{beJiNE;HTSh6R?+O9%QDQx4dCsh~g?fy7FogjJl;`kMOx%)114wy_a1@qyA z#SnQ%??Du0*WA&l`2&Kd&fnr}rjWm|!1vk8)Afr}2}rXjJZ>%*$L>~l{u=oDh9N*^ z6vEMrhUl31oS^FWpL)AWa-0$FY8~!A!vAI8R4Aqz*CA(qC4x?02DOk!Fef3glT}o@ z9Z)uCH&|M8xpxchavMQduKW3J-;e;!LnOO`OVm&%68cz88-h);kcv+{ zz|eZ0nHy9KI!c$7=Q@ap?W0hj;2+C{~#lqBz^kaC0Q^YVO=wMOya-Ao4J%xTcB znhSVO__46G*E|TF+3W+SO%Wv;q(TrPZLyv~aD{^FR>CBRwFJlw(EXVgBa)4iM9jyT znin`OFW^A;&F>0?)7abso#~J|j24(`atrbP=qsz6+wbEc3FI7fp5J(2y9K|Ps#efh z9q7)vtG><5ofk03!j}4t{wskMIP?FtN`j?48o8oH5^m{UcqOZGMzge3C&|bQ<0J9$ zGb2CPpuAzSWdF1IQhFsjXD@C08}R0@9+g{(MC2V6KC`~Lf*HV~pHQ4i3+6Z5SMG>{ z^hZ#mO+KUyp!C@kr-b!v19Q>Wtr^v!D%u3;Fth3XT{UM#c$yIvc}3h< p+h0_if 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 Aa{vGU diff --git a/src/main.py b/src/main.py index 9b2e3de..36384ff 100644 --- a/src/main.py +++ b/src/main.py @@ -1397,6 +1397,7 @@ class SignagePlayer(Widget): self.current_widget = None self.is_playing = False self.is_paused = False + self.auto_resume_event = None # Track scheduled auto-resume self.config = {} self.playlist_version = None self.consecutive_errors = 0 # Track consecutive playback errors @@ -1657,6 +1658,11 @@ class SignagePlayer(Widget): def play_current_media(self): """Play the current media item""" + # Don't play if paused (unless we're explicitly resuming) + if self.is_paused: + Logger.debug(f"SignagePlayer: Skipping play_current_media - player is paused") + return + if not self.playlist or self.current_index >= len(self.playlist): # End of playlist, restart self.restart_playlist() @@ -1840,7 +1846,7 @@ class SignagePlayer(Widget): def next_media(self, dt=None): """Move to next media item""" if self.is_paused: - Logger.debug(f"SignagePlayer: Skipping next_media - player is paused") + Logger.info(f"SignagePlayer: ⏸ Blocked next_media - player is paused") return Logger.info(f"SignagePlayer: Transitioning to next media (was index {self.current_index})") @@ -1860,15 +1866,52 @@ class SignagePlayer(Widget): self.play_current_media() def toggle_pause(self, instance=None): - """Toggle pause/play""" + """Toggle pause/play with auto-resume after 5 minutes""" self.is_paused = not self.is_paused if self.is_paused: - self.ids.play_pause_btn.text = '▶' + # Paused - change icon to play and schedule auto-resume + Logger.info("SignagePlayer: ⏸ PAUSING - is_paused = True") + self.ids.play_pause_btn.background_normal = self.resources_path + '/play.png' + self.ids.play_pause_btn.background_down = self.resources_path + '/play.png' Clock.unschedule(self.next_media) + + # Cancel any existing auto-resume + if self.auto_resume_event: + Clock.unschedule(self.auto_resume_event) + + # Schedule auto-resume after 5 minutes (300 seconds) + self.auto_resume_event = Clock.schedule_once(self.auto_resume_playback, 300) + Logger.info("SignagePlayer: Auto-resume scheduled in 5 minutes") else: - self.ids.play_pause_btn.text = '⏸' - # Resume by playing current media + # Playing - change icon to pause and cancel auto-resume + # Note: is_paused is already set to False by the toggle above + Logger.info("SignagePlayer: ▶ RESUMING - is_paused = False") + self.ids.play_pause_btn.background_normal = self.resources_path + '/pause.png' + self.ids.play_pause_btn.background_down = self.resources_path + '/pause.png' + + # Cancel auto-resume if manually resumed + if self.auto_resume_event: + Clock.unschedule(self.auto_resume_event) + self.auto_resume_event = None + + # Resume by playing current media (is_paused is now False) + self.play_current_media() + + def auto_resume_playback(self, dt): + """Automatically resume playback after 5 minutes of pause""" + Logger.info("SignagePlayer: Auto-resuming playback after 5 minutes") + self.auto_resume_event = None + + if self.is_paused: + # Reset pause state FIRST (before calling play_current_media) + self.is_paused = False + + # Update icon to pause + self.ids.play_pause_btn.background_normal = self.resources_path + '/pause.png' + self.ids.play_pause_btn.background_down = self.resources_path + '/pause.png' + + # Resume playback (is_paused is now False so it will work) self.play_current_media() def restart_playlist(self): diff --git a/src/signage_player.kv b/src/signage_player.kv index 0981e73..61a17d0 100644 --- a/src/signage_player.kv +++ b/src/signage_player.kv @@ -256,7 +256,7 @@ id: play_pause_btn size_hint: None, None size: dp(50), dp(50) - background_normal: root.resources_path + '/play.png' + background_normal: root.resources_path + '/pause.png' background_down: root.resources_path + '/pause.png' border: (0, 0, 0, 0) on_press: root.toggle_pause()