From be69c9b24ff1bbce31240503ba56bfec2c7f142d Mon Sep 17 00:00:00 2001 From: ChuckBuilds <33324927+ChuckBuilds@users.noreply.github.com> Date: Sun, 20 Apr 2025 11:13:33 -0500 Subject: [PATCH] Optimize display updates: Skip display when no games available for NHL and NBA managers --- src/nba_managers.py | 6 ++---- src/nhl_managers.py | 13 ++++++++----- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/nba_managers.py b/src/nba_managers.py index 19a158b3..4ceda781 100644 --- a/src/nba_managers.py +++ b/src/nba_managers.py @@ -762,8 +762,7 @@ class NBARecentManager(BaseNBAManager): """Display recent games.""" if not self.recent_games: self.logger.info("[NBA] No recent games to display") - self.display_manager.clear() - return + return # Skip display update entirely try: current_time = time.time() @@ -860,8 +859,7 @@ class NBAUpcomingManager(BaseNBAManager): if time.time() - self.last_warning_time > self.warning_cooldown: self.logger.info("[NBA] No upcoming games to display") self.last_warning_time = time.time() - self.display_manager.clear() - return + return # Skip display update entirely try: # Draw the scorebug layout diff --git a/src/nhl_managers.py b/src/nhl_managers.py index e10118fa..acc077bb 100644 --- a/src/nhl_managers.py +++ b/src/nhl_managers.py @@ -692,8 +692,7 @@ class NHLRecentManager(BaseNHLManager): """Display recent games.""" if not self.games_list: self.logger.info("[NHL] No recent games to display") - self.display_manager.clear() - return + return # Skip display update entirely try: current_time = time.time() @@ -725,6 +724,8 @@ class NHLUpcomingManager(BaseNHLManager): self.update_interval = 300 # 5 minutes self.last_log_time = 0 self.log_interval = 300 # Only log status every 5 minutes + self.last_warning_time = 0 + self.warning_cooldown = 300 # Only show warning every 5 minutes self.logger.info(f"Initialized NHLUpcomingManager with {len(self.favorite_teams)} favorite teams") def update(self): @@ -779,9 +780,11 @@ class NHLUpcomingManager(BaseNHLManager): def display(self, force_clear=False): """Display upcoming games.""" if not self.upcoming_games: - self.logger.info("[NHL] No upcoming games to display") - self.display_manager.clear() - return + current_time = time.time() + if current_time - self.last_warning_time > self.warning_cooldown: + self.logger.info("[NHL] No upcoming games to display") + self.last_warning_time = current_time + return # Skip display update entirely try: # Draw the scorebug layout