diff --git a/src/FrameworkWidgetFactory.cpp b/src/FrameworkWidgetFactory.cpp index d56cba8e..17f70d9c 100644 --- a/src/FrameworkWidgetFactory.cpp +++ b/src/FrameworkWidgetFactory.cpp @@ -142,6 +142,10 @@ QIcon DefaultWidgetFactory::iconForButtonType(TitleBarButtonType type, qreal dpr case TitleBarButtonType::Maximize: iconName = QStringLiteral("max"); break; + case TitleBarButtonType::Normal: + // We're using the same icon as dock/float + iconName = QStringLiteral("dock-float"); + break; case TitleBarButtonType::Float: iconName = QStringLiteral("dock-float"); break; diff --git a/src/KDDockWidgets.h b/src/KDDockWidgets.h index 428a0004..82469bc2 100644 --- a/src/KDDockWidgets.h +++ b/src/KDDockWidgets.h @@ -113,6 +113,7 @@ namespace KDDockWidgets Float, Minimize, Maximize, + Normal, // Restore from maximized state AutoHide, UnautoHide }; diff --git a/src/private/widgets/TitleBarWidget.cpp b/src/private/widgets/TitleBarWidget.cpp index fc53ac64..e40294c5 100644 --- a/src/private/widgets/TitleBarWidget.cpp +++ b/src/private/widgets/TitleBarWidget.cpp @@ -196,7 +196,8 @@ void TitleBarWidget::updateMaximizeButton() { if (auto fw = floatingWindow()) { auto factory = Config::self().frameworkWidgetFactory(); - const TitleBarButtonType iconType = fw->isMaximized() ? TitleBarButtonType::Float : TitleBarButtonType::Maximize; + const TitleBarButtonType iconType = fw->isMaximized() ? TitleBarButtonType::Normal + : TitleBarButtonType::Maximize; m_maximizeButton->setIcon(factory->iconForButtonType(iconType, devicePixelRatioF())); m_maximizeButton->setVisible(supportsMaximizeButton());