diff options
author | Friedemann Kleint <Friedemann.Kleint@digia.com> | 2012-12-17 11:15:33 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-12-18 09:49:30 +0100 |
commit | 391aecea93a04aee710352b86a019b4f85893144 (patch) | |
tree | 344f932ba6196631101dfb1d1f9391d9ca8d595c /tests/auto/qgridlayout | |
parent | 9fbefb4503235b634f91b16018a6fe1a104a3f0d (diff) | |
download | qt4-tools-391aecea93a04aee710352b86a019b4f85893144.tar.gz |
Use frameless widgets in tst_qgridlayout.
Avoid failures caused by minimum window widths on Windows Areo/8.
Task-number: QTBUG-28611
Change-Id: I9affcce84ab804a45fa1a12fb93ad0136e6ae877
Reviewed-by: Oliver Wolff <oliver.wolff@digia.com>
(cherry picked from qtbase/d5d79f3c7f9e597cb63dfa8a9ccfb9dca733a782)
Diffstat (limited to 'tests/auto/qgridlayout')
-rw-r--r-- | tests/auto/qgridlayout/tst_qgridlayout.cpp | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/tests/auto/qgridlayout/tst_qgridlayout.cpp b/tests/auto/qgridlayout/tst_qgridlayout.cpp index 64e16c04a6..aa9ed19e3d 100644 --- a/tests/auto/qgridlayout/tst_qgridlayout.cpp +++ b/tests/auto/qgridlayout/tst_qgridlayout.cpp @@ -59,6 +59,16 @@ //TESTED_FILES=gui/kernel/qlayout.cpp gui/kernel/qlayout.h +// Make a widget frameless to prevent size constraints of title bars +// from interfering (Windows). +static inline void setFrameless(QWidget *w) +{ + Qt::WindowFlags flags = w->windowFlags(); + flags |= Qt::FramelessWindowHint; + flags &= ~(Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::WindowMinMaxButtonsHint | Qt::WindowCloseButtonHint); + w->setWindowFlags(flags); +} + class tst_QGridLayout : public QObject { Q_OBJECT @@ -261,6 +271,7 @@ void tst_QGridLayout::badDistributionBug() void tst_QGridLayout::setMinAndMaxSize() { QWidget widget; + setFrameless(&widget); QGridLayout layout(&widget); layout.setMargin(0); layout.setSpacing(0); @@ -417,6 +428,7 @@ private: void tst_QGridLayout::spacingAndSpacers() { QWidget widget; + setFrameless(&widget); QGridLayout layout(&widget); layout.setMargin(0); layout.setSpacing(0); @@ -682,8 +694,11 @@ void tst_QGridLayout::spacingsAndMargins() QApplication::setStyle(new Qt42Style); QWidget toplevel; - if(PlatformQuirks::isAutoMaximizing()) + if (PlatformQuirks::isAutoMaximizing()) { toplevel.setWindowFlags(Qt::X11BypassWindowManagerHint); + } else { + setFrameless(&toplevel); + } QVBoxLayout vbox(&toplevel); QGridLayout grid1; vbox.addLayout(&grid1); @@ -878,8 +893,10 @@ void tst_QGridLayout::minMaxSize() QApplication::setStyle(style); if (!m_grid) m_grid = new QGridLayout(); - if (!m_toplevel) + if (!m_toplevel) { m_toplevel = new QWidget(); + setFrameless(m_toplevel); + } if (fixedSize.isValid()) { m_toplevel->setFixedSize(fixedSize); } else { @@ -1090,6 +1107,7 @@ void tst_QGridLayout::styleDependentSpacingsAndMargins() QApplication::setStyle(new CustomLayoutStyle()); QWidget widget; + setFrameless(&widget); QGridLayout layout(&widget); QList<QPointer<SizeHinterFrame> > sizehinters; for (int i = 0; i < rows; ++i) { @@ -1130,6 +1148,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = false; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QVBoxLayout *layout = new QVBoxLayout(); QRadioButton *rb1 = new QRadioButton(QLatin1String("Radio 1"), w); QRadioButton *rb2 = new QRadioButton(QLatin1String("Radio 2"), w); @@ -1166,6 +1185,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = false; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QHBoxLayout *layout = new QHBoxLayout(); QLineEdit *le1 = new QLineEdit(w); QLineEdit *le2 = new QLineEdit(w); @@ -1203,6 +1223,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = true; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QVBoxLayout *layout = new QVBoxLayout(); QPushButton *pb1 = new QPushButton(QLatin1String("Push 1"), w); @@ -1239,6 +1260,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = true; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QGridLayout *layout = new QGridLayout(); QPushButton *pb1 = new QPushButton(QLatin1String("Push 1"), w); QPushButton *pb2 = new QPushButton(QLatin1String("Push 2"), w); @@ -1306,6 +1328,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = true; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QVBoxLayout *layout = new QVBoxLayout(); QPushButton *pb1 = new QPushButton(QLatin1String("Push 1"), w); @@ -1345,6 +1368,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = true; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QVBoxLayout *layout = new QVBoxLayout(); QPushButton *pb1 = new QPushButton(QLatin1String("Push 1"), w); @@ -1393,6 +1417,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = false; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QGridLayout *layout = new QGridLayout(); QPushButton *left = new QPushButton(w); QPushButton *up = new QPushButton(w); @@ -1434,6 +1459,7 @@ void tst_QGridLayout::layoutSpacingImplementation_data() style->reimplementSubelementRect = false; QApplication::setStyle(style); QWidget *w = new QWidget(); + setFrameless(w); QGridLayout *layout = new QGridLayout(); QPushButton *left = new QPushButton(w); QPushButton *up = new QPushButton(w); @@ -1471,6 +1497,7 @@ void tst_QGridLayout::layoutSpacingImplementation() QFETCH(bool, customSubElementRect); QWidget toplevel; + setFrameless(&toplevel); CustomLayoutStyle *style = new CustomLayoutStyle(); style->hspacing = hSpacing; @@ -1497,6 +1524,7 @@ void tst_QGridLayout::layoutSpacingImplementation() void tst_QGridLayout::spacing() { QWidget w; + setFrameless(&w); CustomLayoutStyle *style = new CustomLayoutStyle(); style->hspacing = 5; style->vspacing = 10; @@ -1604,6 +1632,7 @@ void tst_QGridLayout::spacerWithSpacing() void tst_QGridLayout::contentsRect() { QWidget w; + setFrameless(&w); QGridLayout grid; w.setLayout(&grid); grid.addWidget(new QPushButton(&w)); |