Skip to content
Commit 5368861d authored by Derek Christ's avatar Derek Christ Committed by Nate Graham
Browse files

Improve responsiveness of kickoff sidebar view and fix bug 462271

Description of the problem:
Sometimes a `HoverEnter` is sent without `HoverMove`, so the hovered element is not selected in `onPositionChanged`. Instead, we should use `onEntered` again and ignore `HoverEnter` events during the time when scrolling or navigating with the keyboard. Previously, this approach did not work because the `hoverEnabled` property caused `HoverEnter` to be resent after the timers expired, which is wrong for the keyboard navigation.

When the cursor is currently contained in the kickoff menu and the user starts typing, the cursor will select the search item it is currently hovering over. This is a consequence of using `onEntered` instead of `onPositionChanged`. The question is if this is undesired behavior and should be considered as a bug. If this is the case, any typing action should prevent the `currentIndex` to change.

This is a list of bugs I checked against to not introduce any regressions:
 - Triangle menu idle-hover reset doesn't work in kickoff (BUG 438950)
 - Mouse hover selection in search result persists across kickoff openings (BUG 454349)
 - Item not immediately select-able if cursor hovered over the item before opening Kickoff (BUG 456993)
 - Unmoving cursor continually reselects the menu item it's hovering over (BUG 455674)

Additionally, I ensured that the following things do not happen:
 - When scrolling and the cursor is contained in the category list, the selected categories should not be selected during scrolling.
 - When the menu is currently closed and opened with the meta key and the cursor is now hovering a category, do not select it and also do not select it when the cursor is moved in direction of the contentArea (so the user can directly select the favorites).

I have no touchscreen, so it would be good if someone that has one could test this patch.

This merge request depends on merge request plasma-workspace!2462 for plasma-workspace and they should be merged together.

BUG: 462271
FIXED-IN: 5.27
parent b51a1622
Pipeline #417518 passed with stage
in 8 minutes and 33 seconds
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment