From 84e2814ef0f70ea2a6287c6413d700d5f04a5bdb Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Fri, 14 Aug 2020 11:29:34 +0200 Subject: [PATCH 1/2] Do not propagate dark theme to widget designer Fixes: QTCREATORBUG-23981 Change-Id: I63c362b2ec87e02e7d6828ee4c143f54d113bef2 Reviewed-by: Alessandro Portale --- src/libs/utils/theme/theme.cpp | 17 ++++++++++++++++- src/plugins/designer/formeditorw.cpp | 1 + 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/libs/utils/theme/theme.cpp b/src/libs/utils/theme/theme.cpp index 15963f2a564..ca9bbebabf0 100644 --- a/src/libs/utils/theme/theme.cpp +++ b/src/libs/utils/theme/theme.cpp @@ -242,9 +242,24 @@ void Theme::readSettings(QSettings &settings) } } +// If you copy QPalette, default values stay at default, even if that default is different +// within the context of different widgets. Create deep copy. +static QPalette copyPalette(const QPalette &p) +{ + QPalette res; + for (int group = 0; group < QPalette::NColorGroups; ++group) { + for (int role = 0; role < QPalette::NColorRoles; ++role) { + res.setBrush(QPalette::ColorGroup(group), + QPalette::ColorRole(role), + p.brush(QPalette::ColorGroup(group), QPalette::ColorRole(role))); + } + } + return res; +} + QPalette Theme::initialPalette() { - static QPalette palette = QApplication::palette(); + static QPalette palette = copyPalette(QApplication::palette()); return palette; } diff --git a/src/plugins/designer/formeditorw.cpp b/src/plugins/designer/formeditorw.cpp index f068888b494..6d555f2dbff 100644 --- a/src/plugins/designer/formeditorw.cpp +++ b/src/plugins/designer/formeditorw.cpp @@ -766,6 +766,7 @@ IEditor *FormEditorData::createEditor() m_fwm->closeAllPreviews(); QDesignerFormWindowInterface *form = m_fwm->createFormWindow(nullptr); QTC_ASSERT(form, return nullptr); + form->setPalette(Theme::initialPalette()); QObject::connect(form, &QDesignerFormWindowInterface::toolChanged, [this] (int i) { toolChanged(i); }); auto widgetHost = new SharedTools::WidgetHost( /* parent */ nullptr, form); From a0067e9444defc21d45e9f3705a97fd4065810fd Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 14 Aug 2020 12:25:28 +0200 Subject: [PATCH 2/2] Autotools: Fix initial build configuration setup Trade a duplicated 'make' for a 'make clean' step. Amends 571fb04d. Change-Id: I06dca803715a5c0a1a0917e4a4d5bac5704e8a43 Reviewed-by: Christian Stenger --- .../autotoolsprojectmanager/autotoolsbuildconfiguration.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp index 346e19ff722..7e85b062151 100644 --- a/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp +++ b/src/plugins/autotoolsprojectmanager/autotoolsbuildconfiguration.cpp @@ -68,7 +68,7 @@ public: appendInitialBuildStep(Constants::MAKE_STEP_ID); // make // ### Build Steps Clean ### - appendInitialBuildStep(Constants::MAKE_STEP_ID); + appendInitialCleanStep(Constants::MAKE_STEP_ID); // make clean } };