From 051c379e4acae5854f226db09105d6c2e27404b8 Mon Sep 17 00:00:00 2001 From: Uwe Kindler Date: Sat, 1 Apr 2017 22:31:24 +0200 Subject: [PATCH] Fixed startFloating() for FloatingDockContainer if only one DockArea is visble --- src/DockAreaWidget.cpp | 3 ++- src/DockOverlay.cpp | 1 - src/DockWidgetTitleBar.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/DockAreaWidget.cpp b/src/DockAreaWidget.cpp index 65fed2b..7b9a99a 100644 --- a/src/DockAreaWidget.cpp +++ b/src/DockAreaWidget.cpp @@ -145,7 +145,8 @@ protected: // If this is the last dock area in a dock container it does not make // sense to move it to a new floating widget and leave this one // empty - if (m_DockArea->dockContainer()->isFloating() && m_DockArea->dockContainer()->dockAreaCount() == 1) + if (m_DockArea->dockContainer()->isFloating() + && m_DockArea->dockContainer()->visibleDockAreaCount() == 1) { return; } diff --git a/src/DockOverlay.cpp b/src/DockOverlay.cpp index d707a72..4174a0d 100644 --- a/src/DockOverlay.cpp +++ b/src/DockOverlay.cpp @@ -93,7 +93,6 @@ static QPixmap createDropIndicatorPixmap(const QPalette& pal, const QSizeF& size if (CDockOverlay::ModeContainerOverlay == Mode && DockWidgetArea != CenterDockWidgetArea) { baseRect = areaRect; - areaRect = QRectF(); } p.fillRect(baseRect, backgroundColor); diff --git a/src/DockWidgetTitleBar.cpp b/src/DockWidgetTitleBar.cpp index d8a26eb..29fd8dd 100644 --- a/src/DockWidgetTitleBar.cpp +++ b/src/DockWidgetTitleBar.cpp @@ -167,7 +167,7 @@ bool DockWidgetTitleBarPrivate::startFloating() // then it does not make any sense, to make if floating because // it is already floating if (DockWidget->dockContainer()->isFloating() - && (DockWidget->dockContainer()->dockAreaCount() == 1) + && (DockWidget->dockContainer()->visibleDockAreaCount() == 1) && (DockWidget->dockAreaWidget()->count() == 1)) { return false;