Skip to content

Commit dd83812

Browse files
authored
Toogle visibility of custom title bar based on fullscreen state (#814)
1 parent 88db644 commit dd83812

3 files changed

Lines changed: 21 additions & 0 deletions

File tree

src/FloatingDockContainer.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -850,6 +850,12 @@ void CFloatingDockContainer::changeEvent(QEvent *event)
850850
this->showMaximized();
851851
}
852852
}
853+
#if defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)
854+
if (d->TitleBar)
855+
{
856+
d->TitleBar->setVisible(!(isFloating() && isFullScreen()));
857+
}
858+
#endif
853859
break;
854860

855861
default:

src/linux/FloatingWidgetTitleBar.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,20 @@ void CFloatingWidgetTitleBar::mouseDoubleClickEvent(QMouseEvent *event)
238238
}
239239
}
240240

241+
//============================================================================
242+
QSize CFloatingWidgetTitleBar::sizeHint() const
243+
{
244+
if (isVisible())
245+
{
246+
return QFrame::sizeHint();
247+
}
248+
else
249+
{
250+
// Allow titlebar to collapse when set invisible.
251+
return QSize();
252+
}
253+
}
254+
241255

242256
//============================================================================
243257
void CFloatingWidgetTitleBar::setMaximizedIcon(bool maximized)

src/linux/FloatingWidgetTitleBar.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ class CFloatingWidgetTitleBar : public QFrame
5959
virtual void mouseReleaseEvent(QMouseEvent *ev) override;
6060
virtual void mouseMoveEvent(QMouseEvent *ev) override;
6161
virtual void mouseDoubleClickEvent(QMouseEvent *event) override;
62+
virtual QSize sizeHint() const override;
6263

6364
void setMaximizeIcon(const QIcon& Icon);
6465
QIcon maximizeIcon() const;

0 commit comments

Comments
 (0)