Bug 467686

Summary: Application Launcher is Only Mouse. No Keybaord Navigation in Menu [Regression]
Product: [Plasma] plasmashell Reporter: John <kdelovaa>
Component: Application Launcher (Kickoff) widgetAssignee: Plasma Bugs List <plasma-bugs-null>
Status: RESOLVED WORKSFORME    
Severity: major CC: kde, mikel5764, noahadvs, p.r.worrall
Priority: NOR    
Version First Reported In: 5.27.3   
Target Milestone: 1.0   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:
Attachments: Screenshot with text what is going on in "Application Launcher"

Description John 2023-03-22 10:57:14 UTC
Created attachment 157514 [details]
Screenshot with text what is going on in "Application Launcher"

SUMMARY:

---> A screenshot is attached (a picture is worth thousand words, just look at it).<---

Navigating to "Application Launcher" [described as "launcher to start application"] is only mouse compatible. Keyboard navigation fails.
STEPS TO REPRODUCE
1. open "application launcher"
2. navigate with arrow keys/tab to "slepp, hibernate, restart, shutdown" and chose "shutdown"
3. Press Enter [to shutdown the system]

OBSERVED RESULT
Fail to execute Enter while "shutdown" is highlighted.
Navigating with keyboard is a major thing on a desktop. So, I put it in "major"

EXPECTED RESULT:
Fully reinstate keyboard navigation in KDE,

SOFTWARE/OS VERSIONS:

Linux/KDE Plasma: 5.27.3
(available in About System)
KDE Plasma Version: 5.104.0
KDE Frameworks Version: 5.15.8
Qt Version: X11
Comment 1 David Redondo 2023-03-23 08:59:18 UTC
The key to activate buttons is space not enter (in every program) which works for me
Comment 2 Noah Davis 2023-03-23 13:12:04 UTC
The reason for this may not be clear, so I'll explain it. Basically, Qt (our UI toolkit) has conventions for how Space and Enter are used for activating controls.

- Space: Pretty universally able to activate things, except for when Space needs to be treated as a character, such as in editable text controls.
- Enter: Only used to activate list/grid/tree view items, menu items, the default button for a dialog, and accept text in text fields. Why is this? My guess is that Win32 for Windows does the same thing, so Qt did it too. I don't know if Cocoa for MacOS works the same way, but there's a good chance it does.

There is a mechanism for globally changing what keys can activate buttons, but we haven't used it yet and it would mean default buttons in dialogs often won't be activated when Enter is pressed when they used to be.