diff options
author | Hannah von Reth <hannah.vonreth@owncloud.com> | 2020-08-19 18:27:34 +0300 |
---|---|---|
committer | Hannah von Reth <vonreth@kde.org> | 2020-08-21 12:38:17 +0300 |
commit | 4d21f8fb72fe48b32035041f4d629ae57ce4eae7 (patch) | |
tree | 6b5a41999f3ba65ba43778b2b3deacded71092b7 /src | |
parent | 1a78bf1ef14af7c673c535a2ce8d777823f686fe (diff) |
Use QIcon where possible, don't invert color of icons we will use color that...
matches a dark and light theme or use two seperate themes.
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/activitylistmodel.cpp | 2 | ||||
-rw-r--r-- | src/gui/folderstatusdelegate.cpp | 2 | ||||
-rw-r--r-- | src/gui/guiutility.cpp | 14 | ||||
-rw-r--r-- | src/gui/guiutility.h | 3 | ||||
-rw-r--r-- | src/gui/notificationwidget.cpp | 2 | ||||
-rw-r--r-- | src/gui/settingsdialog.cpp | 4 | ||||
-rw-r--r-- | src/gui/sharelinkwidget.cpp | 2 | ||||
-rw-r--r-- | src/gui/shareusergroupwidget.cpp | 4 | ||||
-rw-r--r-- | src/gui/sslbutton.cpp | 4 | ||||
-rw-r--r-- | src/gui/wizard/owncloudadvancedsetuppage.cpp | 2 | ||||
-rw-r--r-- | src/gui/wizard/owncloudsetuppage.cpp | 4 | ||||
-rw-r--r-- | src/gui/wizard/owncloudwizard.cpp | 2 | ||||
-rw-r--r-- | src/gui/wizard/owncloudwizardresultpage.cpp | 2 | ||||
-rw-r--r-- | src/libsync/owncloudtheme.cpp | 4 | ||||
-rw-r--r-- | src/libsync/owncloudtheme.h | 2 | ||||
-rw-r--r-- | src/libsync/theme.cpp | 26 | ||||
-rw-r--r-- | src/libsync/theme.h | 4 |
17 files changed, 21 insertions, 62 deletions
diff --git a/src/gui/activitylistmodel.cpp b/src/gui/activitylistmodel.cpp index e362ffffc..ec609e89a 100644 --- a/src/gui/activitylistmodel.cpp +++ b/src/gui/activitylistmodel.cpp @@ -69,7 +69,7 @@ QVariant ActivityListModel::data(const QModelIndex &index, int role) const return QVariant(); // FIXME once the action can be quantified, display on Icon break; case ActivityItemDelegate::UserIconRole: - return Utility::createColorAwareIcon(QLatin1String(":/client/resources/account.png")); + return QIcon(QStringLiteral(":/client/resources/account.png")); break; case Qt::ToolTipRole: return tr("%1 %2 on %3").arg(a._subject, Utility::timeAgoInWords(a._dateTime), a._accName); diff --git a/src/gui/folderstatusdelegate.cpp b/src/gui/folderstatusdelegate.cpp index c81f381ca..c505fe63e 100644 --- a/src/gui/folderstatusdelegate.cpp +++ b/src/gui/folderstatusdelegate.cpp @@ -39,7 +39,7 @@ namespace OCC { FolderStatusDelegate::FolderStatusDelegate() : QStyledItemDelegate() { - m_moreIcon = Utility::createColorAwareIcon(QLatin1String(":/client/resources/more.svg")); + m_moreIcon = QIcon(QStringLiteral(":/client/resources/more.svg")); } QString FolderStatusDelegate::addFolderText() diff --git a/src/gui/guiutility.cpp b/src/gui/guiutility.cpp index 2c31d3ec5..71cec1073 100644 --- a/src/gui/guiutility.cpp +++ b/src/gui/guiutility.cpp @@ -97,17 +97,3 @@ QString Utility::vfsFreeSpaceActionText() { return QCoreApplication::translate("utility", "Free up local space"); } - -QPixmap Utility::createColorAwareIcon(const QString &name, const QPalette &palette) -{ - const QColor bg(palette.base().color()); - QImage img(Theme::hidpiFileName(name)); - if (img.isGrayscale()) { - // account for different sensitivity of the human eye to certain colors - double treshold = 1.0 - (0.299 * bg.red() + 0.587 * bg.green() + 0.114 * bg.blue()) / 255.0; - if (treshold > 0.5) { - img.invertPixels(QImage::InvertRgb); - } - } - return QPixmap::fromImage(img); -} diff --git a/src/gui/guiutility.h b/src/gui/guiutility.h index 8ffd57baa..6e2c5f163 100644 --- a/src/gui/guiutility.h +++ b/src/gui/guiutility.h @@ -49,9 +49,6 @@ namespace Utility { /** Translated text for "free up local space" (and unpinning the item) */ QString vfsFreeSpaceActionText(); - /** Create bw icon with matching contrast for the current theme */ - QPixmap createColorAwareIcon(const QString &name, const QPalette &palette = QPalette()); - } // namespace Utility } // namespace OCC diff --git a/src/gui/notificationwidget.cpp b/src/gui/notificationwidget.cpp index 83f2c05dd..5fe677571 100644 --- a/src/gui/notificationwidget.cpp +++ b/src/gui/notificationwidget.cpp @@ -57,7 +57,7 @@ void NotificationWidget::setActivity(const Activity &activity) _ui._messageLabel->setText(activity._message); - const auto icon = Utility::createColorAwareIcon(":/client/resources/bell.png").scaled(64, 64, Qt::KeepAspectRatio); + const auto icon = QIcon(QStringLiteral(":/client/resources/bell.png")).pixmap(64); _ui._notifIcon->setPixmap(icon); _ui._notifIcon->setFixedSize(icon.size()); _ui._notifIcon->show(); diff --git a/src/gui/settingsdialog.cpp b/src/gui/settingsdialog.cpp index f64d2dded..65e16b645 100644 --- a/src/gui/settingsdialog.cpp +++ b/src/gui/settingsdialog.cpp @@ -352,7 +352,7 @@ void SettingsDialog::customizeStyle() _ui->toolBar->setStyleSheet(TOOLBAR_CSS().arg(background, dark, highlightColor, highlightTextColor)); Q_FOREACH (QAction *a, _actionGroup->actions()) { - QIcon icon = Utility::createColorAwareIcon(a->property("iconPath").toString(), palette()); + QIcon icon = QIcon(a->property("iconPath").toString()); a->setIcon(icon); QToolButton *btn = qobject_cast<QToolButton *>(_ui->toolBar->widgetForAction(a)); if (btn) { @@ -407,7 +407,7 @@ QAction *SettingsDialog::createActionWithIcon(const QIcon &icon, const QString & QAction *SettingsDialog::createColorAwareAction(const QString &iconPath, const QString &text) { // all buttons must have the same size in order to keep a good layout - QIcon coloredIcon = Utility::createColorAwareIcon(iconPath, palette()); + QIcon coloredIcon = QIcon(iconPath); return createActionWithIcon(coloredIcon, text, iconPath); } diff --git a/src/gui/sharelinkwidget.cpp b/src/gui/sharelinkwidget.cpp index 0d8bc5a39..e45ebc23f 100644 --- a/src/gui/sharelinkwidget.cpp +++ b/src/gui/sharelinkwidget.cpp @@ -228,7 +228,7 @@ void ShareLinkWidget::slotSharesFetched(const QList<QSharedPointer<Share>> &shar connect(table, &QTableWidget::itemSelectionChanged, this, &ShareLinkWidget::slotShareSelectionChanged); auto deleteIcon = QIcon::fromTheme(QLatin1String("user-trash"), - Utility::createColorAwareIcon(QLatin1String(":/client/resources/delete.png"))); + QIcon(QStringLiteral(":/client/resources/delete.png"))); foreach (auto share, shares) { if (share->getShareType() != Share::TypeLink) { diff --git a/src/gui/shareusergroupwidget.cpp b/src/gui/shareusergroupwidget.cpp index 01a493fad..2aa31a7cd 100644 --- a/src/gui/shareusergroupwidget.cpp +++ b/src/gui/shareusergroupwidget.cpp @@ -383,7 +383,7 @@ ShareUserLine::ShareUserLine(QSharedPointer<Share> share, _ui->permissionToolButton->setMenu(menu); _ui->permissionToolButton->setPopupMode(QToolButton::InstantPopup); - QIcon icon = Utility::createColorAwareIcon(QLatin1String(":/client/resources/more.svg")); + QIcon icon = QIcon(QStringLiteral(":/client/resources/more.svg")); _ui->permissionToolButton->setIcon(icon); // If there's only a single entry in the detailed permission menu, hide it @@ -419,7 +419,7 @@ ShareUserLine::ShareUserLine(QSharedPointer<Share> share, connect(share.data(), &Share::shareDeleted, this, &ShareUserLine::slotShareDeleted); _ui->deleteShareButton->setIcon(QIcon::fromTheme(QLatin1String("user-trash"), - Utility::createColorAwareIcon(QLatin1String(":/client/resources/delete.png")))); + QIcon(QStringLiteral(":/client/resources/delete.png")))); if (!share->account()->capabilities().shareResharing()) { _ui->permissionShare->hide(); diff --git a/src/gui/sslbutton.cpp b/src/gui/sslbutton.cpp index 7022224c2..aadca2606 100644 --- a/src/gui/sslbutton.cpp +++ b/src/gui/sslbutton.cpp @@ -170,11 +170,11 @@ void SslButton::updateAccountState(AccountState *accountState) AccountPtr account = _accountState->account(); if (account->url().scheme() == QLatin1String("https")) { - setIcon(Utility::createColorAwareIcon(QLatin1String(":/client/resources/lock-https.png"))); + setIcon(QIcon(QStringLiteral(":/client/resources/lock-https.png"))); QSslCipher cipher = account->_sessionCipher; setToolTip(tr("This connection is encrypted using %1 bit %2.\n").arg(cipher.usedBits()).arg(cipher.name())); } else { - setIcon(Utility::createColorAwareIcon(QLatin1String(":/client/resources/lock-http.png"))); + setIcon(QIcon(QStringLiteral(":/client/resources/lock-http.png"))); setToolTip(tr("This connection is NOT secure as it is not encrypted.\n")); } } diff --git a/src/gui/wizard/owncloudadvancedsetuppage.cpp b/src/gui/wizard/owncloudadvancedsetuppage.cpp index 90cb6987a..e11ce21fb 100644 --- a/src/gui/wizard/owncloudadvancedsetuppage.cpp +++ b/src/gui/wizard/owncloudadvancedsetuppage.cpp @@ -77,7 +77,7 @@ OwncloudAdvancedSetupPage::OwncloudAdvancedSetupPage() _ui.lServerIcon->setText(QString()); _ui.lServerIcon->setPixmap(appIcon.pixmap(48)); _ui.lLocalIcon->setText(QString()); - _ui.lLocalIcon->setPixmap(Utility::createColorAwareIcon(":/client/resources/folder-sync.png")); + _ui.lLocalIcon->setPixmap(QIcon(QStringLiteral(":/client/resources/folder-sync.png")).pixmap(48)); if (theme->wizardHideExternalStorageConfirmationCheckbox()) { _ui.confCheckBoxExternal->hide(); diff --git a/src/gui/wizard/owncloudsetuppage.cpp b/src/gui/wizard/owncloudsetuppage.cpp index 42d2049aa..81bd7edaf 100644 --- a/src/gui/wizard/owncloudsetuppage.cpp +++ b/src/gui/wizard/owncloudsetuppage.cpp @@ -128,11 +128,11 @@ void OwncloudSetupPage::slotUrlChanged(const QString &url) } if (!url.startsWith(QLatin1String("https://"))) { - _ui.urlLabel->setPixmap(Utility::createColorAwareIcon(":/client/resources/lock-http.png")); + _ui.urlLabel->setPixmap(QIcon(QStringLiteral(":/client/resources/lock-http.png")).pixmap(48)); _ui.urlLabel->setToolTip(tr("This url is NOT secure as it is not encrypted.\n" "It is not advisable to use it.")); } else { - _ui.urlLabel->setPixmap(Utility::createColorAwareIcon(":/client/resources/lock-https.png")); + _ui.urlLabel->setPixmap(QIcon(QStringLiteral(":/client/resources/lock-https.png")).pixmap(48)); _ui.urlLabel->setToolTip(tr("This url is secure. You can use it.")); } } diff --git a/src/gui/wizard/owncloudwizard.cpp b/src/gui/wizard/owncloudwizard.cpp index 5d23664ff..e01367f95 100644 --- a/src/gui/wizard/owncloudwizard.cpp +++ b/src/gui/wizard/owncloudwizard.cpp @@ -78,7 +78,7 @@ OwncloudWizard::OwncloudWizard(QWidget *parent) setWindowTitle(tr("%1 Connection Wizard").arg(theme->appNameGUI())); setWizardStyle(QWizard::ModernStyle); setPixmap(QWizard::BannerPixmap, theme->wizardHeaderBanner()); - setPixmap(QWizard::LogoPixmap, theme->wizardHeaderLogo()); + setPixmap(QWizard::LogoPixmap, theme->wizardHeaderLogo().pixmap(132, 63)); setOption(QWizard::NoBackButtonOnStartPage); setOption(QWizard::NoBackButtonOnLastPage); setOption(QWizard::NoCancelButton, false); diff --git a/src/gui/wizard/owncloudwizardresultpage.cpp b/src/gui/wizard/owncloudwizardresultpage.cpp index 41ce5220e..c7198fc50 100644 --- a/src/gui/wizard/owncloudwizardresultpage.cpp +++ b/src/gui/wizard/owncloudwizardresultpage.cpp @@ -39,7 +39,7 @@ OwncloudWizardResultPage::OwncloudWizardResultPage() setSubTitle(QLatin1String(" ")); _ui.pbOpenLocal->setText(tr("Open Local Folder")); - _ui.pbOpenLocal->setIcon(Utility::createColorAwareIcon(QLatin1String(":/client/resources/folder-sync.png"))); + _ui.pbOpenLocal->setIcon(QIcon(QStringLiteral(":/client/resources/folder-sync.png"))); _ui.pbOpenLocal->setIconSize(QSize(48, 48)); _ui.pbOpenLocal->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); connect(_ui.pbOpenLocal, &QAbstractButton::clicked, this, &OwncloudWizardResultPage::slotOpenLocal); diff --git a/src/libsync/owncloudtheme.cpp b/src/libsync/owncloudtheme.cpp index 1e142b962..1236f9c1d 100644 --- a/src/libsync/owncloudtheme.cpp +++ b/src/libsync/owncloudtheme.cpp @@ -51,9 +51,9 @@ QColor ownCloudTheme::wizardHeaderTitleColor() const return QColor("#ffffff"); } -QPixmap ownCloudTheme::wizardHeaderLogo() const +QIcon ownCloudTheme::wizardHeaderLogo() const { - return QPixmap(hidpiFileName(":/client/theme/colored/wizard_logo.png")); + return QIcon(QStringLiteral(":/client/theme/colored/wizard_logo.png")); } #endif diff --git a/src/libsync/owncloudtheme.h b/src/libsync/owncloudtheme.h index 6fbb2288f..9cf67f333 100644 --- a/src/libsync/owncloudtheme.h +++ b/src/libsync/owncloudtheme.h @@ -33,7 +33,7 @@ public: QColor wizardHeaderBackgroundColor() const override; QColor wizardHeaderTitleColor() const override; - QPixmap wizardHeaderLogo() const override; + QIcon wizardHeaderLogo() const override; #endif // For owncloud-brandings *do* show the virtual files option. diff --git a/src/libsync/theme.cpp b/src/libsync/theme.cpp index da9809e8c..bb816fc04 100644 --- a/src/libsync/theme.cpp +++ b/src/libsync/theme.cpp @@ -176,28 +176,6 @@ QIcon Theme::themeIcon(const QString &name, bool sysTray, bool sysTrayMenuVisibl return cached; } - -QString Theme::hidpiFileName(const QString &fileName, QPaintDevice *dev) -{ - qreal devicePixelRatio = dev ? dev->devicePixelRatio() : qApp->primaryScreen()->devicePixelRatio(); - if (devicePixelRatio <= 1.0) { - return fileName; - } - // try to find a 2x version - - - const int dotIndex = fileName.lastIndexOf(QLatin1Char('.')); - if (dotIndex != -1) { - QString at2xfileName = fileName; - at2xfileName.insert(dotIndex, QStringLiteral("@2x")); - if (QFile::exists(at2xfileName)) { - return at2xfileName; - } - } - return fileName; -} - - #endif Theme::Theme() @@ -452,9 +430,9 @@ QColor Theme::wizardHeaderBackgroundColor() const return QColor(); } -QPixmap Theme::wizardHeaderLogo() const +QIcon Theme::wizardHeaderLogo() const { - return applicationIcon().pixmap(64); + return applicationIcon(); } QPixmap Theme::wizardHeaderBanner() const diff --git a/src/libsync/theme.h b/src/libsync/theme.h index 4f5b87401..3580e7b49 100644 --- a/src/libsync/theme.h +++ b/src/libsync/theme.h @@ -87,8 +87,6 @@ public: virtual QString configFileName() const; #ifndef TOKEN_AUTH_ONLY - static QString hidpiFileName(const QString &fileName, QPaintDevice *dev = nullptr); - /** * get an sync state icon */ @@ -182,7 +180,7 @@ public: virtual QColor wizardHeaderBackgroundColor() const; /** @return logo for the setup wizard. */ - virtual QPixmap wizardHeaderLogo() const; + virtual QIcon wizardHeaderLogo() const; /** * The default implementation creates a |