From 519b9e3c5299dd737e3739bdebbb3f76398ec96a Mon Sep 17 00:00:00 2001 From: Henning Gruendl Date: Mon, 20 Feb 2023 11:09:25 +0100 Subject: [PATCH] QmlDesigner: Fix startup crash on linux Task-number: QDS-9198 Change-Id: I1e0f87a941ccbd2131f0e86ae20f7a2d0c2d7856 Reviewed-by: Thomas Hartmann Reviewed-by: Miikka Heikkinen --- .../advanceddockingsystem/dockfocuscontroller.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/libs/advanceddockingsystem/dockfocuscontroller.cpp b/src/libs/advanceddockingsystem/dockfocuscontroller.cpp index c0c632cb989..a5878ba856c 100644 --- a/src/libs/advanceddockingsystem/dockfocuscontroller.cpp +++ b/src/libs/advanceddockingsystem/dockfocuscontroller.cpp @@ -105,11 +105,16 @@ namespace ADS q, &DockFocusController::onFocusedDockAreaViewToggled); } - auto newFloatingWidget = m_focusedDockWidget->dockContainer()->floatingWidget(); + auto dockContainer = m_focusedDockWidget->dockContainer(); + FloatingDockContainer *newFloatingWidget = nullptr; + + if (dockContainer) + newFloatingWidget = dockContainer->floatingWidget(); + if (newFloatingWidget) newFloatingWidget->setProperty("FocusedDockWidget", QVariant::fromValue(dockWidget)); - #ifdef Q_OS_LINUX +#ifdef Q_OS_LINUX // This code is required for styling the floating widget titlebar for linux // depending on the current focus state if (m_floatingWidget == newFloatingWidget) @@ -122,7 +127,7 @@ namespace ADS if (m_floatingWidget) updateFloatingWidgetFocusStyle(m_floatingWidget, true); - #endif +#endif if (old != dockWidget) emit m_dockManager->focusedDockWidgetChanged(old, dockWidget);