Fix isTopLevel() in QWindow.
This also makes modal hints set properly for dialogs so the additional checks during active window change are not needed anymore. Reviewed-by: Samuel Rødalbb10
parent
be24744c75
commit
589a562c01
|
|
@ -154,7 +154,7 @@ void QWindow::setParent(QWindow *parent)
|
|||
bool QWindow::isTopLevel() const
|
||||
{
|
||||
Q_D(const QWindow);
|
||||
return d->parentWindow != 0;
|
||||
return d->parentWindow == 0;
|
||||
}
|
||||
|
||||
bool QWindow::isModal() const
|
||||
|
|
|
|||
|
|
@ -157,14 +157,7 @@ void QApplicationPrivate::notifyActiveWindowChange(QWindow *previous)
|
|||
Q_Q(QApplication);
|
||||
QWindow *wnd = QGuiApplicationPrivate::active_window;
|
||||
QWidget *tlw = qt_tlw_for_window(wnd);
|
||||
if (!tlw)
|
||||
return;
|
||||
if (modalState()
|
||||
&& !qt_try_modal(tlw, QEvent::MouseButtonRelease)
|
||||
&& q->activeWindow())
|
||||
q->activeWindow()->activateWindow();
|
||||
else
|
||||
q->setActiveWindow(tlw);
|
||||
q->setActiveWindow(tlw);
|
||||
}
|
||||
|
||||
void QApplicationPrivate::closePopup(QWidget *popup)
|
||||
|
|
|
|||
Loading…
Reference in New Issue