summaryrefslogtreecommitdiffstats
path: root/opensuse/core/qt3/0059-qpopup_has_mouse.patch
diff options
context:
space:
mode:
Diffstat (limited to 'opensuse/core/qt3/0059-qpopup_has_mouse.patch')
-rw-r--r--opensuse/core/qt3/0059-qpopup_has_mouse.patch69
1 files changed, 0 insertions, 69 deletions
diff --git a/opensuse/core/qt3/0059-qpopup_has_mouse.patch b/opensuse/core/qt3/0059-qpopup_has_mouse.patch
deleted file mode 100644
index 18ae0081d..000000000
--- a/opensuse/core/qt3/0059-qpopup_has_mouse.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-qt-bugs@ issue : 49417
-bugs.kde.org number : 58719
-applied: no
-author: Lubos Lunak <l.lunak@kde.org>
-
-Hello,
-
- please consider applying the two attached QPopupMenu patches fixing KDE bugs
- #58719 and #74778 (http://bugs.kde.org/show_bug.cgi?id=58719,
- http://bugs.kde.org/show_bug.cgi?id=74778), which complain about keyboard
- navigation in popup menus being very uncomfortable because of being affected
- by mouse position despite mouse not being used at all.
-
- - hasmouse.patch - (#58719) - use keyboard to open and navigate in any popup
- menu and "accidentally" hit your mouse. Depending on the mouse cursor
- position either no popup entry is selected or the random popup entry
- happening to be at the cursor position becomes highlighted. The patch
- basically copies the 'hasmouse' code from QMenuBar which prevents the mouse
- having any effect on the popup if it's outside the popup geometry.
-
- [ ... #74778 ... ]
-
-================================================================================
---- src/widgets/qpopupmenu.cpp
-+++ src/widgets/qpopupmenu.cpp
-@@ -253,6 +253,7 @@
- } scroll;
- QSize calcSize;
- QRegion mouseMoveBuffer;
-+ uint hasmouse : 1;
- };
-
- static QPopupMenu* active_popup_menu = 0;
-@@ -272,6 +273,7 @@
- d->scroll.scrollableSize = d->scroll.topScrollableIndex = 0;
- d->scroll.scrollable = QPopupMenuPrivate::Scroll::ScrollNone;
- d->scroll.scrolltimer = 0;
-+ d->hasmouse = 0;
- isPopupMenu = TRUE;
- #ifndef QT_NO_ACCEL
- autoaccel = 0;
-@@ -1741,6 +1743,11 @@
-
- int item = itemAtPos( e->pos() );
- if ( item == -1 ) { // no valid item
-+ if( !d->hasmouse ) {
-+ tryMenuBar( e );
-+ return;
-+ }
-+ d->hasmouse = 0;
- int lastActItem = actItem;
- actItem = -1;
- if ( lastActItem >= 0 )
-@@ -1752,6 +1759,7 @@
- }
- } else { // mouse on valid item
- // but did not register mouse press
-+ d->hasmouse = 1;
- if ( (e->state() & Qt::MouseButtonMask) && !mouseBtDn )
- mouseBtDn = TRUE; // so mouseReleaseEvent will pop down
-
-@@ -2160,6 +2168,7 @@
- */
- void QPopupMenu::leaveEvent( QEvent * )
- {
-+ d->hasmouse = 0;
- if ( testWFlags( WStyle_Tool ) && style().styleHint(QStyle::SH_PopupMenu_MouseTracking, this) ) {
- int lastActItem = actItem;
- actItem = -1;