Add initial functionality for Auto hide

- Add left and right side tab widgets
- Add overlay dock and overlay dock widget behavior
This commit is contained in:
Syarif Fakhri
2022-09-05 17:29:42 +08:00
parent da8f17cce2
commit 3e9dc7f4d6
28 changed files with 1530 additions and 28 deletions

View File

@@ -25,6 +25,8 @@
#include "FloatingDockContainer.h"
#include "DockManager.h"
#include "DockAreaTitleBar.h"
#include "DockWidgetSideTab.h"
#include "OverlayDockContainer.h"
#ifdef Q_OS_LINUX
#include "linux/FloatingWidgetTitleBar.h"
@@ -69,6 +71,8 @@ static void updateDockWidgetFocusStyle(CDockWidget* DockWidget, bool Focused)
DockWidget->setProperty("focused", Focused);
DockWidget->tabWidget()->setProperty("focused", Focused);
DockWidget->tabWidget()->updateStyle();
DockWidget->sideTabWidget()->setProperty("focused", Focused);
DockWidget->sideTabWidget()->updateStyle();
internal::repolishStyle(DockWidget);
}
@@ -185,6 +189,11 @@ void DockFocusControllerPrivate::updateDockWidgetFocus(CDockWidget* DockWidget)
}
#endif
if (old && old->overlayDockContainer() && old != DockWidget)
{
old->overlayDockContainer()->hide();
}
if (old == DockWidget && !ForceFocusChangedSignal)
{
return;