summaryrefslogtreecommitdiff
path: root/lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch
diff options
context:
space:
mode:
Diffstat (limited to 'lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch')
-rw-r--r--lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch b/lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch
new file mode 100644
index 000000000000..85258c851f74
--- /dev/null
+++ b/lxqt-base/lxqt-qtplugin/files/lxqt-qtplugin-0.15.1-no-widget-reset.patch
@@ -0,0 +1,30 @@
+From 8cc32d94b4c9de74b5bcf27fae2d10e6b2b11caf Mon Sep 17 00:00:00 2001
+From: Tsu Jan <tsujan2000@gmail.com>
+Date: Mon, 1 Jun 2020 22:20:22 +0430
+Subject: [PATCH] Do not reset widget palettes on changing style
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Generally, resetting a widget's palette from outside its code is a bad practice because the palette may have been changed for a reason.
+
+If the custom palette of a widget needs an update when the style changes, the program itself is responsible for that; otherwise, the program has a bug — as in libfm-qt's places view (which I'll fix soon) and Dolphin's main view (which will never be fixed).
+---
+ src/lxqtplatformtheme.cpp | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/src/lxqtplatformtheme.cpp b/src/lxqtplatformtheme.cpp
+index 2df9f8f..76f6483 100644
+--- a/src/lxqtplatformtheme.cpp
++++ b/src/lxqtplatformtheme.cpp
+@@ -234,10 +234,6 @@ void LXQtPlatformTheme::onSettingsChanged() {
+ // Qt5 added a QEvent::ThemeChange event.
+ QEvent event(QEvent::ThemeChange);
+ QApplication::sendEvent(widget, &event);
+- // Also, set the palette because it may not be updated for some widgets.
+- // WARNING: The app palette should be used, not LXQtPalette_, because
+- // some widget styles have their own palettes.
+- widget->setPalette(QApplication::palette());
+ }
+ }
+