Bug 315346 - Reaching Submenus Not So Easy
Summary: Reaching Submenus Not So Easy
Status: RESOLVED UPSTREAM
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 4.8.4
Platform: Debian unstable Linux
: NOR normal
Target Milestone: ---
Assignee: kdelibs bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-17 22:08 UTC by Tsu Jan
Modified: 2014-05-28 14:24 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tsu Jan 2013-02-17 22:08:45 UTC
I recently noticed that opening submenus in KDE apps is sometimes not as easy as in GTK+ apps. I try to explain the reason:

In GTK+, the menuitem below or above the currently selected one won't be selected unless the mouse pointer leaves the currect menuitem almost vertically. While in KDE, even if the pointer leaves the currently selected menuitem within a small horizontal angle to reach some item on an opened submenu, that submenu might be closed because the pointer might pass over another menuitem below or above the selected one. So, the only safe way to reach an item on a submenu is to move the pointer first horizontally and then vertically, which isn't so easy.

Reproducible: Always

Steps to Reproduce:
1. Select a menitem with submenu.
2. Move the mouse pointer toward the submenu not exactly horizontally.
Actual Results:  
The submenu may dissapear before any of its items is selected.

Expected Results:  
The submenu shouldn't dissapear if the pointer movement is within a small horizontal angle.
Comment 1 Christoph Feck 2013-02-17 22:49:35 UTC
Menus are handled by the Qt library. If this is an issue with a recent Qt version (4.8.x), please report directly to Qt developers via https://bugreports.qt-project.org/
Comment 2 Tsu Jan 2013-02-17 23:00:51 UTC
Hello,

This isn't a recent issue. I recently migrated to KDE from Gnome and, at last, found why KDE and Qt menus behave so. However, I'd seen the same behavior with KDE 3.

It's not a big issue but moving the pointer along the hypotenuse is the most natural thing to do; Isn't it?
Comment 3 Tsu Jan 2014-05-23 10:01:19 UTC
Just for reference:
It's related to Oxygen and not kdelibs. At least with my own theme engine instead of Oxygen, setting QStyle::SH_Menu_SloppySubMenus to true fixed the issue.
Comment 4 Christoph Feck 2014-05-23 11:20:06 UTC
Hugo, could you check comment #3?
Comment 5 Hugo Pereira Da Costa 2014-05-25 12:24:16 UTC
Hi Christoph,
tested setting the mentionned stylehint. I agree that submenu poppign up is somewhat less erratic so I guess I'll set this to true and commit.
I have not noticed "clear" regressions that would cause people that where used to the "old" behavior to complain ...
Comment 6 Hugo Pereira Da Costa 2014-05-28 14:11:20 UTC
Git commit 1b126fb88ea9a36ff1cd98c45b77a278a537270b by Hugo Pereira Da Costa.
Committed on 28/05/2014 at 14:10.
Pushed by hpereiradacosta into branch 'master'.

set to true the (infamous) SH_Menu_SloppySubMenus flag.
This ease submenu popping.

M  +1    -0    kstyle/oxygenstyle.cpp

http://commits.kde.org/oxygen/1b126fb88ea9a36ff1cd98c45b77a278a537270b
Comment 7 Hugo Pereira Da Costa 2014-05-28 14:24:19 UTC
Git commit 0e7e5b0bbce6495cd7dfe6c096b9bd8a6b3fbde4 by Hugo Pereira Da Costa.
Committed on 28/05/2014 at 14:24.
Pushed by hpereiradacosta into branch 'KDE/4.11'.

set to true the (infamous) SH_Menu_SloppySubMenus flag. This ease submenu popping.

M  +1    -0    kstyles/oxygen/oxygenstyle.cpp

http://commits.kde.org/kde-workspace/0e7e5b0bbce6495cd7dfe6c096b9bd8a6b3fbde4