Details
-
Bug
-
Resolution: Won't Do
-
P2: Important
-
4.8.7, 5.6, 5.15.14, 6.5.1
-
None
-
Qt4, X11, KDE4, kwin
-
7993321e7 (dev), 9361d8057 (6.5), bede24ee0 (6.6)
Description
Minimizing the window, or switching virtual desktops leads to UnmapNotify (on X11) which hides the toplevel window, which calls this code in qdockwidget.cpp:
case QEvent::Hide:
if (layout != 0)
layout->keepSize(this);
d->toggleViewAction->setChecked(false);
emit visibilityChanged(false);
break;
If the app connects visibilityChanged(false) to a slot which toggles a QAction, then the dockwidget will not be shown again when switching back to the virtual desktop where the app is.
I think there's a missing check for event->spontaneous() in that code?
Attachments
For Gerrit Dashboard: QTBUG-48161 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
125532,1 | QDockWidget: don't uncheck the QAction when hidden by window system | dev | qt/qtbase | Status: ABANDONED | 0 | 0 |
485176,6 | Update documentation of signal QDockWidget::visibilityChanged | dev | qt/qtbase | Status: MERGED | +2 | 0 |
485772,2 | Update documentation of signal QDockWidget::visibilityChanged | 6.5 | qt/qtbase | Status: MERGED | +2 | 0 |
485773,2 | Update documentation of signal QDockWidget::visibilityChanged | 6.6 | qt/qtbase | Status: MERGED | +2 | 0 |