diff options
Diffstat (limited to 'opensuse/core/qt3/fix-xinerama-dialog-placement.diff')
-rw-r--r-- | opensuse/core/qt3/fix-xinerama-dialog-placement.diff | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/opensuse/core/qt3/fix-xinerama-dialog-placement.diff b/opensuse/core/qt3/fix-xinerama-dialog-placement.diff new file mode 100644 index 000000000..26ca37c16 --- /dev/null +++ b/opensuse/core/qt3/fix-xinerama-dialog-placement.diff @@ -0,0 +1,13 @@ +--- src/dialogs/qdialog.cpp ++++ src/dialogs/qdialog.cpp +@@ -803,7 +803,9 @@ + w = w->topLevelWidget(); + QRect desk; + if ( w ) { +- scrn = QApplication::desktop()->screenNumber( w ); ++ // Use mapToGlobal rather than geometry() in case w might ++ // be embedded in another application ++ scrn = QApplication::desktop()->screenNumber( w->mapToGlobal( QPoint(0,0) ) ); + } else if ( QApplication::desktop()->isVirtualDesktop() ) { + scrn = QApplication::desktop()->screenNumber( QCursor::pos() ); + } else { |