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;