summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Bastian <thierry.bastian@nokia.com>2009-08-06 13:43:42 +0200
committerThierry Bastian <thierry.bastian@nokia.com>2009-08-06 14:12:55 +0200
commit13998901f7831beaaeca6ada4def3e29af4e251d (patch)
tree66ac0f805beb8051781931e82cddcff12ba4833b
parent2f289b2a3e7c217c1e5c85e68cde81951a9fbcd7 (diff)
QMenuBar: we can't test the action geometries when it is native
-rw-r--r--src/gui/widgets/qmenubar.cpp3
-rw-r--r--tests/auto/qmenubar/tst_qmenubar.cpp3
2 files changed, 6 insertions, 0 deletions
diff --git a/src/gui/widgets/qmenubar.cpp b/src/gui/widgets/qmenubar.cpp
index 4a900d6b44..389b65f9dd 100644
--- a/src/gui/widgets/qmenubar.cpp
+++ b/src/gui/widgets/qmenubar.cpp
@@ -272,6 +272,9 @@ QRect QMenuBarPrivate::actionRect(QAction *act) const
//makes sure the geometries are up-to-date
const_cast<QMenuBarPrivate*>(this)->updateGeometries();
+ if (index >= actionRects.count())
+ return QRect(); // that can happen in case of native menubar
+
QRect ret = actionRects.at(index);
return QStyle::visualRect(q->layoutDirection(), q->rect(), ret);
}
diff --git a/tests/auto/qmenubar/tst_qmenubar.cpp b/tests/auto/qmenubar/tst_qmenubar.cpp
index 67e088b211..f8f536c5ed 100644
--- a/tests/auto/qmenubar/tst_qmenubar.cpp
+++ b/tests/auto/qmenubar/tst_qmenubar.cpp
@@ -1586,6 +1586,9 @@ void tst_QMenuBar::menubarSizeHint()
} style;
QMenuBar mb;
+ if (mb.isNativeMenuBar())
+ QSKIP("we can't check the geometry of native menubars", SkipAll);
+
mb.setStyle(&style);
//this is a list of arbitrary strings so that we check the geometry
QStringList list = QStringList() << "trer" << "ezrfgtgvqd" << "sdgzgzerzerzer" << "eerzertz" << "er";