From 9042ef75577504485c09b2c866efe7578a51b6ca Mon Sep 17 00:00:00 2001 From: Jonathan White Date: Tue, 14 Jul 2020 18:34:14 -0400 Subject: [PATCH] Correct scaling on Linux and other minor fixes * Fixes #5081 - Initialize MessageWidget::m_animate prior to use * Fixes #5021 - Don't change tray icon type with unfocused mouse wheel * Fixes #5029 - Only use HighDpiScaleFactorRoundingPolicy::PassThrough on Windows platforms. Prevents significant scaling bugs on Linux. MacOS does not support fractional scaling. --- src/gui/ApplicationSettingsWidget.cpp | 1 + src/gui/ApplicationSettingsWidgetGeneral.ui | 6 ++++++ src/gui/MessageWidget.cpp | 2 +- src/gui/MessageWidget.h | 2 +- src/main.cpp | 2 +- 5 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gui/ApplicationSettingsWidget.cpp b/src/gui/ApplicationSettingsWidget.cpp index 8d958ab7..cd2b48c6 100644 --- a/src/gui/ApplicationSettingsWidget.cpp +++ b/src/gui/ApplicationSettingsWidget.cpp @@ -126,6 +126,7 @@ ApplicationSettingsWidget::ApplicationSettingsWidget(QWidget* parent) m_generalUi->faviconTimeoutSpinBox->installEventFilter(mouseWheelFilter); m_generalUi->toolButtonStyleComboBox->installEventFilter(mouseWheelFilter); m_generalUi->languageComboBox->installEventFilter(mouseWheelFilter); + m_generalUi->trayIconAppearance->installEventFilter(mouseWheelFilter); #ifdef WITH_XC_UPDATECHECK connect(m_generalUi->checkForUpdatesOnStartupCheckBox, SIGNAL(toggled(bool)), SLOT(checkUpdatesToggled(bool))); diff --git a/src/gui/ApplicationSettingsWidgetGeneral.ui b/src/gui/ApplicationSettingsWidgetGeneral.ui index 7324c5ab..8d5ba8ad 100644 --- a/src/gui/ApplicationSettingsWidgetGeneral.ui +++ b/src/gui/ApplicationSettingsWidgetGeneral.ui @@ -626,6 +626,12 @@ 0 + + Qt::StrongFocus + + + Tray icon type + diff --git a/src/gui/MessageWidget.cpp b/src/gui/MessageWidget.cpp index 494a8154..6479dd28 100644 --- a/src/gui/MessageWidget.cpp +++ b/src/gui/MessageWidget.cpp @@ -103,4 +103,4 @@ void MessageWidget::openHttpUrl(const QString& link) if (link.startsWith("http://") || link.startsWith("https://")) { QDesktopServices::openUrl(QUrl(link)); } -} \ No newline at end of file +} diff --git a/src/gui/MessageWidget.h b/src/gui/MessageWidget.h index 2c8c9a21..f7067904 100644 --- a/src/gui/MessageWidget.h +++ b/src/gui/MessageWidget.h @@ -52,7 +52,7 @@ public slots: private: QTimer* m_autoHideTimer; int m_autoHideTimeout; - bool m_animate; + bool m_animate = true; }; #endif // MESSAGEWIDGET_H diff --git a/src/main.cpp b/src/main.cpp index 31d760be..7e340da4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -52,7 +52,7 @@ int main(int argc, char** argv) QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); QGuiApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); #endif -#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) +#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) && defined(Q_OS_WIN) QGuiApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::PassThrough); #endif