Disable shuffle if frequency is set to 0.

Took 13 minutes


Took 26 seconds
This commit is contained in:
Lukas Brübach 2025-09-15 20:58:31 +02:00
parent 9c3be1b851
commit c9dd4c51f8
3 changed files with 17 additions and 1 deletions

View file

@ -46,6 +46,8 @@ HomeWidget::HomeWidget(QWidget *parent, TabSupervisor *_tabSupervisor)
connect(tabSupervisor->getClient(), &RemoteClient::statusChanged, this, &HomeWidget::updateConnectButton); connect(tabSupervisor->getClient(), &RemoteClient::statusChanged, this, &HomeWidget::updateConnectButton);
connect(&SettingsCache::instance(), &SettingsCache::homeTabBackgroundSourceChanged, this, connect(&SettingsCache::instance(), &SettingsCache::homeTabBackgroundSourceChanged, this,
&HomeWidget::initializeBackgroundFromSource); &HomeWidget::initializeBackgroundFromSource);
connect(&SettingsCache::instance(), &SettingsCache::homeTabBackgroundShuffleFrequencyChanged, this,
&HomeWidget::onBackgroundShuffleFrequencyChanged);
} }
void HomeWidget::initializeBackgroundFromSource() void HomeWidget::initializeBackgroundFromSource()
@ -118,6 +120,19 @@ void HomeWidget::updateRandomCard()
connect(newCard.getCardPtr().data(), &CardInfo::pixmapUpdated, this, &HomeWidget::updateBackgroundProperties); connect(newCard.getCardPtr().data(), &CardInfo::pixmapUpdated, this, &HomeWidget::updateBackgroundProperties);
backgroundSourceCard->setCard(newCard); backgroundSourceCard->setCard(newCard);
background = backgroundSourceCard->getProcessedBackground(size()); background = backgroundSourceCard->getProcessedBackground(size());
if (SettingsCache::instance().getHomeTabBackgroundShuffleFrequency() <= 0) {
cardChangeTimer->stop();
}
}
void HomeWidget::onBackgroundShuffleFrequencyChanged()
{
cardChangeTimer->stop();
if (SettingsCache::instance().getHomeTabBackgroundShuffleFrequency() <= 0) {
return;
}
cardChangeTimer->start(SettingsCache::instance().getHomeTabBackgroundShuffleFrequency() * 1000);
} }
void HomeWidget::updateBackgroundProperties() void HomeWidget::updateBackgroundProperties()

View file

@ -22,6 +22,7 @@ public:
public slots: public slots:
void paintEvent(QPaintEvent *event) override; void paintEvent(QPaintEvent *event) override;
void initializeBackgroundFromSource(); void initializeBackgroundFromSource();
void onBackgroundShuffleFrequencyChanged();
void updateBackgroundProperties(); void updateBackgroundProperties();
void updateButtonsToBackgroundColor(); void updateButtonsToBackgroundColor();
QGroupBox *createButtons(); QGroupBox *createButtons();

View file

@ -684,7 +684,7 @@ void AppearanceSettingsPage::retranslateUi()
themeLabel.setText(tr("Current theme:")); themeLabel.setText(tr("Current theme:"));
openThemeButton.setText(tr("Open themes folder")); openThemeButton.setText(tr("Open themes folder"));
homeTabBackgroundSourceLabel.setText(tr("Home tab background source:")); homeTabBackgroundSourceLabel.setText(tr("Home tab background source:"));
homeTabBackgroundShuffleFrequencyLabel.setText(tr("Home tab background shuffle frequency:")); homeTabBackgroundShuffleFrequencyLabel.setText(tr("Home tab background shuffle frequency (0 to disable):"));
menuGroupBox->setTitle(tr("Menu settings")); menuGroupBox->setTitle(tr("Menu settings"));
showShortcutsCheckBox.setText(tr("Show keyboard shortcuts in right-click menus")); showShortcutsCheckBox.setText(tr("Show keyboard shortcuts in right-click menus"));