Bug 447278 - Kickoff inappropriately pre-selects the category under the cursor position when it opens
Summary: Kickoff inappropriately pre-selects the category under the cursor position wh...
Status: CONFIRMED
Alias: None
Product: plasmashell
Classification: Plasma
Component: Application Launcher (Kickoff) (show other bugs)
Version: 5.26.4
Platform: Arch Linux Linux
: NOR minor
Target Milestone: 1.0
Assignee: David Edmundson
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-12-20 13:02 UTC by Patrick Silva
Modified: 2023-09-13 07:52 UTC (History)
6 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 Patrick Silva 2021-12-20 13:02:17 UTC
SUMMARY
Cannot reproduce this bug consistently, but it occurs often after the steps below.

STEPS TO REPRODUCE
1. open kickoff
2. hover over any category
3. do not move cursor
4. close and open kickoff by pressing meta key

OBSERVED RESULT
Kickoff activates the category used in the step 2

EXPECTED RESULT
Favorites should always be activated on opening

SOFTWARE/OS VERSIONS
Operating System: KDE neon Unstable Edition
KDE Plasma Version: 5.23.80
KDE Frameworks Version: 5.90.0
Qt Version: 5.15.3
Graphics Platform: Wayland
Comment 1 Bug Janitor Service 2021-12-26 13:50:34 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1310
Comment 2 Bug Janitor Service 2021-12-26 14:50:13 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1311
Comment 3 Fushan Wen 2021-12-26 14:54:38 UTC
Git commit 5d524ea52e73748582f8d1b8e9eb9d52e8bfccb0 by Fushan Wen.
Committed on 26/12/2021 at 14:54.
Pushed by fusionfuture into branch 'master'.

applets/kicker: Use single-shot timer in TriangleMouseFilter

The timer does not need to repeat sending hover events.

M  +1    -0    applets/kicker/plugin/trianglemousefilter.cpp

https://invent.kde.org/plasma/plasma-workspace/commit/5d524ea52e73748582f8d1b8e9eb9d52e8bfccb0
Comment 4 Bug Janitor Service 2021-12-26 22:20:19 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1314
Comment 5 David Edmundson 2022-01-02 20:41:25 UTC
Git commit 6f809058a6e0a4711bf23af118c091e683eea8bd by David Edmundson.
Committed on 02/01/2022 at 20:41.
Pushed by davidedmundson into branch 'master'.

[kicker] Cache position of hover enter events before replaying

The triangle mouse blocks events that happen within a given region and
conditions, then replays those events when those conditions get broken.

If we intercept an enter event, we capture that under
m_interceptedHoverItem so that if conditions change we can replay that
hover enter event before we then start sending move events.

Currently we replay that hover event using the current mouse position.
This causes an issue for kickoff that has additional code to look for
actual move events in order to avoid selecting the current item on
scroll. Both codepaths are correct standalone, but together form a bug.

This patch caches the relative position of a HoverEnter event. Should we
replay the enter event, we do so with the position of the enter. We then
can replay a HoverMove to get the up-to-date location.

M  +9    -1    applets/kicker/plugin/trianglemousefilter.cpp
M  +3    -2    applets/kicker/plugin/trianglemousefilter.h

https://invent.kde.org/plasma/plasma-workspace/commit/6f809058a6e0a4711bf23af118c091e683eea8bd
Comment 6 Patrick Silva 2022-01-13 21:47:46 UTC
This bug is still reproducible on Plasma 5.24 beta.

Operating System: Arch Linux
KDE Plasma Version: 5.23.90
KDE Frameworks Version: 5.90.0
Qt Version: 5.15.2
Graphics Platform: Wayland
Comment 7 Patrick Silva 2022-05-20 00:14:07 UTC
Can repropduce if I hover over 'Lost & found' category in the step 2.

Operating System: Arch Linux
KDE Plasma Version: 5.24.90
KDE Frameworks Version: 5.94.0
Qt Version: 5.15.4
Graphics Platform: Wayland
Comment 8 Patrick Silva 2022-05-20 02:42:25 UTC
Can also reproduce on neon unstable by hovering over the last category in the step 2.
Comment 9 Nate Graham 2022-07-05 17:07:39 UTC

*** This bug has been marked as a duplicate of bug 438950 ***
Comment 10 Patrick Silva 2022-11-24 20:52:39 UTC
it's still reproducible on neon unstable, but not consistently.
Comment 11 Nate Graham 2023-01-09 22:24:55 UTC
Can reproduce sometimes, like Patrick.