{
Q_Q(QWidget);
q->setAttribute(Qt::WA_Mapped);
+
+ QWindow *window = q->windowHandle();
+
if (q->testAttribute(Qt::WA_DontShowOnScreen)) {
invalidateBuffer(q->rect());
+ if (q->isWindow() && q->windowModality() != Qt::NonModal && window) {
+ // add our window to the modal window list
+ QGuiApplicationPrivate::showModalWindow(window);
+ }
return;
}
if (!q->isWindow() && !q->testAttribute(Qt::WA_NativeWindow))
return;
- QWindow *window = q->windowHandle();
if (window) {
QRect geomRect = q->geometry();
if (q->isWindow()) {
}
invalidateBuffer(q->rect());
-
- if (window)
- window->setVisible(true);
+ window->setVisible(true);
}
}
{
Q_Q(QWidget);
q->setAttribute(Qt::WA_Mapped, false);
+
+ QWindow *window = q->windowHandle();
+
+ if (q->testAttribute(Qt::WA_DontShowOnScreen)
+ && q->isWindow()
+ && q->windowModality() != Qt::NonModal
+ && window) {
+ // remove our window from the modal window list
+ QGuiApplicationPrivate::hideModalWindow(window);
+ }
+
deactivateWidgetCleanup();
if (!q->isWindow()) {
QWidget *p = q->parentWidget();
}
return;
}
- if (QWindow *window = q->windowHandle()) {
- window->setVisible(false);
- }
+
+ if (window)
+ window->setVisible(false);
}
void QWidgetPrivate::setMaxWindowState_helper()