diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-07-17 01:00:21 +0200 |
---|---|---|
committer | Edward Welbourne <edward.welbourne@qt.io> | 2018-07-17 10:19:22 +0200 |
commit | 1783fca89768a9d503d886673643dc4542ec467f (patch) | |
tree | 5055f39393017219e448ade71b3842896c4679c5 /tests/manual | |
parent | b82648bd59256abb8e7084e0424a1f8a6a034c34 (diff) | |
parent | 435d1d53bd61491010dbb2130a27e35cd9798965 (diff) |
Merge remote-tracking branch 'origin/5.11' into dev
Conflicts:
src/plugins/platforms/cocoa/qcocoawindow.mm
src/plugins/platforms/xcb/qxcbintegration.cpp
Conflicts git missed:
src/plugins/platforms/qnx/qqnxglcontext.cpp
Change-Id: I0582cdc9e66e43efe79038b9c43d4f9572ac88fc
Diffstat (limited to 'tests/manual')
-rw-r--r-- | tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/main.cpp | 73 | ||||
-rw-r--r-- | tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/menuOnMultiScreens.pro | 3 |
2 files changed, 76 insertions, 0 deletions
diff --git a/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/main.cpp b/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/main.cpp new file mode 100644 index 0000000000..d55f507717 --- /dev/null +++ b/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/main.cpp @@ -0,0 +1,73 @@ +/**************************************************************************** + ** + ** Copyright (C) 2017 The Qt Company Ltd. + ** Contact: https://www.qt.io/licensing/ + ** + ** This file is part of the test suite of the Qt Toolkit. + ** + ** $QT_BEGIN_LICENSE:GPL-EXCEPT$ + ** Commercial License Usage + ** Licensees holding valid commercial Qt licenses may use this file in + ** accordance with the commercial license agreement provided with the + ** Software or, alternatively, in accordance with the terms contained in + ** a written agreement between you and The Qt Company. For licensing terms + ** and conditions see https://www.qt.io/terms-conditions. For further + ** information use the contact form at https://www.qt.io/contact-us. + ** + ** GNU General Public License Usage + ** Alternatively, this file may be used under the terms of the GNU + ** General Public License version 3 as published by the Free Software + ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT + ** included in the packaging of this file. Please review the following + ** information to ensure the GNU General Public License requirements will + ** be met: https://www.gnu.org/licenses/gpl-3.0.html. + ** + ** $QT_END_LICENSE$ + ** + ****************************************************************************/ + +// This tests that when in a multiple screen setup, that screens that have a top-left of 0x0 or +// a top left of being above/below the other screen then showing the toolbutton menu will be +// placed correctly. + +#include <QApplication> +#include <QMainWindow> +#include <QToolBar> +#include <QToolButton> +#include <QMenu> +#include <QScreen> + +class MyMainWindow : public QMainWindow +{ +public: + MyMainWindow(QWidget *parent = 0) : QMainWindow(parent) + { + auto *toolBar = new QToolBar; + QPixmap pix(16, 16); + pix.fill(Qt::red); + auto *button = new QToolButton; + button->setIcon(pix); + toolBar->addWidget(button); + auto *menu = new QMenu(button); + for (int i = 0; i < 10; ++i) + menu->addAction(QString("Test Action %1").arg(i)); + button->setMenu(menu); + addToolBar(toolBar); + } +}; + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + QList<MyMainWindow *> windows; + for (QScreen *s : a.screens()) { + MyMainWindow *w = new MyMainWindow; + w->setGeometry(s->availableGeometry()); + w->show(); + windows << w; + } + int ret = a.exec(); + qDeleteAll(windows); + return ret; +} + diff --git a/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/menuOnMultiScreens.pro b/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/menuOnMultiScreens.pro new file mode 100644 index 0000000000..8979e7ef35 --- /dev/null +++ b/tests/manual/widgets/widgets/qtoolbutton/menuOnMultiScreens/menuOnMultiScreens.pro @@ -0,0 +1,3 @@ +TEMPLATE = app +QT += widgets +SOURCES += main.cpp |