diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-11-26 10:51:33 +0100 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-11-26 10:51:34 +0100 |
commit | 3061dc4abdfbd1a536918935d380872de6655521 (patch) | |
tree | ff440ed0c7d5816cc7e2874f73fdabfb0bce493f /src/widgets | |
parent | 25b2b682d616dd52c3515f443e3d25fc0224f3a2 (diff) | |
parent | 9b8570c4e9359eb8b45b39c28aa9d8c140f3fc44 (diff) |
Merge remote-tracking branch 'origin/release' into stable
Change-Id: I83ff8f4d7dffd7385013a1bd8a1732a89ee20d56
Diffstat (limited to 'src/widgets')
-rw-r--r-- | src/widgets/kernel/qwidget.cpp | 20 | ||||
-rw-r--r-- | src/widgets/kernel/qwidget_qpa.cpp | 2 | ||||
-rw-r--r-- | src/widgets/kernel/qwidgetwindow.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qmenu.cpp | 8 |
4 files changed, 11 insertions, 23 deletions
diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 933294e21f..1da0be9781 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -6999,23 +6999,23 @@ void QWidget::setUpdatesEnabled(bool enable) } /*! - Shows the widget and its child widgets. This function is - equivalent to setVisible(true) in the normal case, and equivalent - to showFullScreen() if the QStyleHints::showIsFullScreen() hint - is true and the window is not a popup. + Shows the widget and its child widgets. - \sa raise(), showEvent(), hide(), setVisible(), showMinimized(), showMaximized(), - showNormal(), isVisible(), windowFlags() + This is equivalent to calling showFullScreen(), showMaximized(), or setVisible(true), + depending on the platform's default behavior for the window flags. + + \sa raise(), showEvent(), hide(), setVisible(), showMinimized(), showMaximized(), + showNormal(), isVisible(), windowFlags(), flags() */ void QWidget::show() { - bool isPopup = data->window_flags & Qt::Popup & ~Qt::Window; - if (isWindow() && !isPopup && qApp->styleHints()->showIsFullScreen()) + Qt::WindowState defaultState = QGuiApplicationPrivate::platformIntegration()->defaultWindowState(data->window_flags); + if (defaultState == Qt::WindowFullScreen) showFullScreen(); - else if (isWindow() && !(data->window_flags & Qt::Dialog & ~Qt::Window) && !isPopup && QGuiApplicationPrivate::platformIntegration()->styleHint(QPlatformIntegration::ShowIsMaximized).toBool()) + else if (defaultState == Qt::WindowMaximized) showMaximized(); else - setVisible(true); + setVisible(true); // FIXME: Why not showNormal(), like QWindow::show()? } /*! \internal diff --git a/src/widgets/kernel/qwidget_qpa.cpp b/src/widgets/kernel/qwidget_qpa.cpp index 3c4985591e..93234f3958 100644 --- a/src/widgets/kernel/qwidget_qpa.cpp +++ b/src/widgets/kernel/qwidget_qpa.cpp @@ -510,9 +510,9 @@ void QWidgetPrivate::show_sys() QWindow *window = q->windowHandle(); - q->setAttribute(Qt::WA_Mapped); if (q->testAttribute(Qt::WA_DontShowOnScreen)) { invalidateBuffer(q->rect()); + q->setAttribute(Qt::WA_Mapped); if (q->isWindow() && q->windowModality() != Qt::NonModal && window) { // add our window to the modal window list QGuiApplicationPrivate::showModalWindow(window); diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp index edcbb08d1c..2e96247873 100644 --- a/src/widgets/kernel/qwidgetwindow.cpp +++ b/src/widgets/kernel/qwidgetwindow.cpp @@ -715,10 +715,6 @@ void QWidgetWindow::handleWindowStateChangedEvent(QWindowStateChangeEvent *event break; } - // Note that widgetState == m_widget->data->window_state when triggered by QWidget::setWindowState(). - if (!(widgetState & Qt::WindowMinimized)) - m_widget->setAttribute(Qt::WA_Mapped); - // Sent event if the state changed (that is, it is not triggered by // QWidget::setWindowState(), which also sends an event to the widget). if (widgetState != int(m_widget->data->window_state)) { diff --git a/src/widgets/widgets/qmenu.cpp b/src/widgets/widgets/qmenu.cpp index 0cbd1c720c..3a4fd449c8 100644 --- a/src/widgets/widgets/qmenu.cpp +++ b/src/widgets/widgets/qmenu.cpp @@ -1834,14 +1834,6 @@ QSize QMenu::sizeHint() const void QMenu::popup(const QPoint &p, QAction *atAction) { Q_D(QMenu); - -#ifdef Q_OS_ANDROID - if (!d->platformMenu.isNull() && !testAttribute(Qt::WA_SetStyle)) { - d->platformMenu->showPopup(window()->windowHandle(), p, 0); - return; - } -#endif - if (d->scroll) { // reset scroll state from last popup if (d->scroll->scrollOffset) d->itemsDirty = 1; // sizeHint will be incorrect if there is previous scroll |