summaryrefslogtreecommitdiffstats
path: root/tools/designer/src/lib/shared/qdesigner_menubar.cpp
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@nokia.com>2009-11-25 18:20:45 (GMT)
committerThiago Macieira <thiago.macieira@nokia.com>2009-11-25 18:20:45 (GMT)
commite58b7f0cc139c5fda3d472c38161be8fb718db7d (patch)
tree3c20cccfe050d125a5f4736ba11b6383e8734be4 /tools/designer/src/lib/shared/qdesigner_menubar.cpp
parentc2a4a1b1e06f8b0d02e7b56c9eb0c19fd2fae80a (diff)
parent4c3539dfbc65d5decdd842d4181f9aa3d38d213c (diff)
downloadQt-e58b7f0cc139c5fda3d472c38161be8fb718db7d.zip
Qt-e58b7f0cc139c5fda3d472c38161be8fb718db7d.tar.gz
Qt-e58b7f0cc139c5fda3d472c38161be8fb718db7d.tar.bz2
Merge branch '4.6'
Conflicts: doc/src/modules.qdoc examples/assistant/simpletextviewer/findfiledialog.cpp examples/webkit/fancybrowser/mainwindow.cpp src/gui/widgets/qtabbar.cpp src/gui/widgets/qtabbar_p.h tests/auto/qpixmap/tst_qpixmap.cpp tools/assistant/compat/helpdialog.cpp tools/assistant/compat/tabbedbrowser.cpp translations/translations.pri
Diffstat (limited to 'tools/designer/src/lib/shared/qdesigner_menubar.cpp')
-rw-r--r--tools/designer/src/lib/shared/qdesigner_menubar.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/tools/designer/src/lib/shared/qdesigner_menubar.cpp b/tools/designer/src/lib/shared/qdesigner_menubar.cpp
index 80c7b53..e25290a 100644
--- a/tools/designer/src/lib/shared/qdesigner_menubar.cpp
+++ b/tools/designer/src/lib/shared/qdesigner_menubar.cpp
@@ -867,7 +867,15 @@ void QDesignerMenuBar::showMenu(int index)
if ((menu->windowFlags() & Qt::Popup) != Qt::Popup)
menu->setWindowFlags(Qt::Popup);
menu->adjustSize();
- menu->move(mapToGlobal(g.bottomLeft()));
+ if (layoutDirection() == Qt::LeftToRight) {
+ menu->move(mapToGlobal(g.bottomLeft()));
+ } else {
+ // The position is not initially correct due to the unknown width,
+ // causing it to overlap a bit the first time it is invoked.
+ const QSize menuSize = menu->size();
+ QPoint point = g.bottomRight() - QPoint(menu->width(), 0);
+ menu->move(mapToGlobal(point));
+ }
menu->setFocus(Qt::MouseFocusReason);
menu->raise();
menu->show();