summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2020-07-13 14:45:41 +0200
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2020-07-21 19:38:25 +0000
commit7218665699e31ac8eebab17afd684d1a56d12ac3 (patch)
tree2cd6912956cc45b101bf8c5d35663b797bf4619f /src/gui
parentf459ab1a37354ffae8aec61ae5579ee7b5cceb01 (diff)
Ensure styles always get to polish the application palette
Before 0a93db4d82c051164923a10e4382b12de9049b45 we would polish the application palette even when it was the default palette, as we always recreated the system palette each time a style was set. After the change we skipped polishing the palette unless it was set by the user, under the assumption that the style would set its own default palette if it wanted to override the system palette. This turned out to break the style's ability to slightly tweak the palette via polish (versus the more full on standardPalette approach). We now polish both the default palette and user palettes, and we do so as part of the normal palette update logic. This ensures that the style also gets a chance to polish the palette when the platform theme changes. The polish will not have an effect on the resolve mask of the palette, as the polish is conceptually the same as a base palette, and should not affect e.g. Qt::AA_SetPalette. Fixes: QTBUG-85469 Fixes: QTBUG-85188 Change-Id: I869e9c442b177de4f1dc49eb75220709306f4d12 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 0bf120f5fd197cd215cd9520a494b162887d1ec4) Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/kernel/qguiapplication_p.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gui/kernel/qguiapplication_p.h b/src/gui/kernel/qguiapplication_p.h
index 5239b58c97..855b369640 100644
--- a/src/gui/kernel/qguiapplication_p.h
+++ b/src/gui/kernel/qguiapplication_p.h
@@ -323,6 +323,8 @@ public:
static void resetCachedDevicePixelRatio();
+ static void updatePalette();
+
protected:
virtual void notifyThemeChanged();
@@ -337,7 +339,6 @@ protected:
private:
static void clearPalette();
- static void updatePalette();
friend class QDragManager;