changeset 386:e89901683d72 default tip

now_playing: don't reset the timer every 5 seconds ahaha
author Paper <paper@tflc.us>
date Thu, 06 Nov 2025 08:59:44 -0500
parents aa38b904de4f
children
files include/gui/pages/now_playing.h src/gui/pages/now_playing.cc
diffstat 2 files changed, 8 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/include/gui/pages/now_playing.h	Thu Nov 06 08:58:05 2025 -0500
+++ b/include/gui/pages/now_playing.h	Thu Nov 06 08:59:44 2025 -0500
@@ -43,7 +43,7 @@
 
 public:
 	Playing(QWidget* parent = nullptr);
-	void SetPlayingAnime(const Anime::Anime& anime, const anitomy::Elements& info);
+	bool SetPlayingAnime(const Anime::Anime& anime, const anitomy::Elements& info);
 	int GetPlayingAnime();
 	int GetPlayingEpisode();
 
--- a/src/gui/pages/now_playing.cc	Thu Nov 06 08:58:05 2025 -0500
+++ b/src/gui/pages/now_playing.cc	Thu Nov 06 08:59:44 2025 -0500
@@ -44,7 +44,7 @@
 
 	main_layout->addWidget(&_title);
 
-	_info.setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding);
+	_info.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
 	_info.layout()->setContentsMargins(0, 0, 0, 0);
 	main_layout->addWidget(&_info);
 
@@ -72,11 +72,11 @@
 	return _episode;
 }
 
-void Playing::SetPlayingAnime(const Anime::Anime &anime, const anitomy::Elements &info)
+bool Playing::SetPlayingAnime(const Anime::Anime &anime, const anitomy::Elements &info)
 {
 	if (_id == anime.GetId() &&
 	    _episode == Strings::ToInt(Strings::ToUtf8String(info.get(anitomy::kElementEpisodeNumber))))
-		return;
+		return false;
 	_id = anime.GetId();
 	_episode = Strings::ToInt(Strings::ToUtf8String(info.get(anitomy::kElementEpisodeNumber)));
 	_title.SetText(anime.GetUserPreferredTitle());
@@ -84,6 +84,7 @@
 	_poster.SetAnime(anime);
 
 	updateGeometry();
+	return true;
 }
 
 } // namespace NowPlayingPages
@@ -132,11 +133,11 @@
 
 void NowPlayingPage::SetPlaying(const Anime::Anime &anime, const anitomy::Elements &info)
 {
-	playing_.SetPlayingAnime(anime, info);
+	if (playing_.SetPlayingAnime(anime, info))
+		timer_ = session.uptime();
+
 	stack_.setCurrentIndex(static_cast<int>(Subpages::Playing));
 	updateGeometry();
-
-	timer_ = session.uptime();
 }
 
 void NowPlayingPage::TimerDone(void)