mirror of
https://github.com/nextcloud/desktop.git
synced 2024-12-03 17:54:48 +03:00
Merge pull request #5968 from nextcloud/bugfix/dark-mode-folder-wizard-warning-color
Fix folder wizard warning color for local path in dark mode
This commit is contained in:
commit
6ebc94f166
2 changed files with 47 additions and 5 deletions
|
@ -41,6 +41,21 @@
|
|||
|
||||
#include <cstdlib>
|
||||
|
||||
namespace
|
||||
{
|
||||
constexpr QColor darkWarnYellow(63, 63, 0);
|
||||
constexpr QColor lightWarnYellow(255, 255, 192);
|
||||
|
||||
QPalette yellowWarnWidgetPalette(const QPalette &existingPalette)
|
||||
{
|
||||
const auto warnYellow = OCC::Theme::instance()->darkMode() ? darkWarnYellow : lightWarnYellow;
|
||||
auto modifiedPalette = existingPalette;
|
||||
modifiedPalette.setColor(QPalette::Window, warnYellow);
|
||||
modifiedPalette.setColor(QPalette::Base, warnYellow);
|
||||
return modifiedPalette;
|
||||
}
|
||||
}
|
||||
|
||||
namespace OCC {
|
||||
|
||||
QString FormatWarningsWizardPage::formatWarnings(const QStringList &warnings) const
|
||||
|
@ -162,10 +177,8 @@ void FolderWizardLocalPath::changeEvent(QEvent *e)
|
|||
|
||||
void FolderWizardLocalPath::changeStyle()
|
||||
{
|
||||
const auto warnYellow = Theme::isDarkColor(QGuiApplication::palette().base().color()) ? QColor(63, 63, 0) : QColor(255, 255, 192);
|
||||
auto modifiedPalette = _ui.warnLabel->palette();
|
||||
modifiedPalette.setColor(QPalette::Window, warnYellow);
|
||||
_ui.warnLabel->setPalette(modifiedPalette);
|
||||
const auto yellowWarnPalette = yellowWarnWidgetPalette(_ui.warnLabel->palette());
|
||||
_ui.warnLabel->setPalette(yellowWarnPalette);
|
||||
}
|
||||
|
||||
// =================================================================================
|
||||
|
@ -192,6 +205,8 @@ FolderWizardRemotePath::FolderWizardRemotePath(const AccountPtr &account)
|
|||
_ui.folderTreeWidget->header()->setSectionResizeMode(0, QHeaderView::ResizeToContents);
|
||||
// Make sure that there will be a scrollbar when the contents is too wide
|
||||
_ui.folderTreeWidget->header()->setStretchLastSection(false);
|
||||
|
||||
changeStyle();
|
||||
}
|
||||
|
||||
void FolderWizardRemotePath::slotAddRemoteFolder()
|
||||
|
@ -523,6 +538,28 @@ void FolderWizardRemotePath::showWarn(const QString &msg) const
|
|||
}
|
||||
}
|
||||
|
||||
void FolderWizardRemotePath::changeEvent(QEvent *e)
|
||||
{
|
||||
switch (e->type()) {
|
||||
case QEvent::StyleChange:
|
||||
case QEvent::PaletteChange:
|
||||
case QEvent::ThemeChange:
|
||||
// Notify the other widgets (Dark-/Light-Mode switching)
|
||||
changeStyle();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
FormatWarningsWizardPage::changeEvent(e);
|
||||
}
|
||||
|
||||
void FolderWizardRemotePath::changeStyle()
|
||||
{
|
||||
const auto yellowWarnPalette = yellowWarnWidgetPalette(_ui.warnLabel->palette());
|
||||
_ui.warnLabel->setPalette(yellowWarnPalette);
|
||||
}
|
||||
|
||||
// ====================================================================================
|
||||
|
||||
FolderWizardSelectiveSync::FolderWizardSelectiveSync(const AccountPtr &account)
|
||||
|
|
|
@ -94,7 +94,6 @@ public:
|
|||
void cleanupPage() override;
|
||||
|
||||
protected slots:
|
||||
|
||||
void showWarn(const QString & = QString()) const;
|
||||
void slotAddRemoteFolder();
|
||||
void slotCreateRemoteFolder(const QString &);
|
||||
|
@ -110,6 +109,12 @@ protected slots:
|
|||
void slotLsColFolderEntry();
|
||||
void slotTypedPathFound(const QStringList &subpaths);
|
||||
|
||||
protected:
|
||||
void changeEvent(QEvent *) override;
|
||||
|
||||
private slots:
|
||||
void changeStyle();
|
||||
|
||||
private:
|
||||
LsColJob *runLsColJob(const QString &path);
|
||||
void recursiveInsert(QTreeWidgetItem *parent, QStringList pathTrail, QString path);
|
||||
|
|
Loading…
Reference in a new issue