Bug 441848

Summary: Virtual keyboard is shown when focusing input fields even if it was disabled in the user's session
Product: [Plasma] plasmashell Reporter: Oleg Solovyov <mcpain>
Component: Theme - BreezeAssignee: visual-design
Status: RESOLVED FIXED    
Severity: normal CC: nate, plasma-bugs
Priority: NOR    
Version: 5.22.4   
Target Milestone: 1.0   
Platform: Other   
OS: Linux   
See Also: https://bugs.kde.org/show_bug.cgi?id=440569
Latest Commit: Version Fixed In: 5.23

Description Oleg Solovyov 2021-09-01 07:56:12 UTC
STEPS TO REPRODUCE
1. Boot PC
2. Switch on and off virtual keyboard
3. Focus on password input

OBSERVED RESULT
Virtual keyboard is shown

EXPECTED RESULT
Virtual keyboard is hidden

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 5.10.59
(available in About System)
KDE Plasma Version: 5.22.4
KDE Frameworks Version: 5.85.0
Qt Version: 5.15.2
Comment 1 Nate Graham 2021-09-01 14:01:48 UTC

*** This bug has been marked as a duplicate of bug 440569 ***
Comment 2 Oleg Solovyov 2021-09-01 14:19:44 UTC
Not a duplicate.

My bug happens before logging in.
Hence, no sessions (specifying wayland makes no sense), no kwin instances (target is marked as kwin bug).

If it is a duplicate please reassign target to something non-specific to sessions.
Comment 3 Oleg Solovyov 2021-09-01 14:21:06 UTC
(In reply to Oleg Solovyov from comment #2)
> Not a duplicate.
> 
> My bug happens before logging in.
> Hence, no sessions (specifying wayland makes no sense), no kwin instances
> (target is marked as kwin bug).
> 
> If it is a duplicate please reassign target to something non-specific to
> sessions.

PS caouldn't find a component "SDDM Breeze theme"
Comment 4 Nate Graham 2021-09-01 14:23:29 UTC
Oh, in the login screen. Can confirm.

Same basic issue, but a different root cause in this case.
Comment 5 Oleg Solovyov 2021-09-02 13:24:59 UTC
(In reply to Nate Graham from comment #4)
> Oh, in the login screen. Can confirm.
> 
> Same basic issue, but a different root cause in this case.

QtVirtualKeyboard::AppInputPanel::show() is called each time inputPanel is clicked.
We need to filter events from mouse and physical keyboard
Comment 6 Nate Graham 2021-09-02 15:05:38 UTC
Indeed. Unfortunately I don't know how to do that. If you do, and you would be willing to work on it, that would be really impactful!
Comment 7 Oleg Solovyov 2021-09-03 06:43:34 UTC
It appears that show() is called even when virtualkeyboard is not active.
Comment 8 Oleg Solovyov 2021-09-03 07:34:06 UTC
Found. Which branch should be targeted?
I could push to master or Plasma/5.22
Comment 9 Oleg Solovyov 2021-09-03 07:38:57 UTC
(In reply to Oleg Solovyov from comment #8)
> Found. Which branch should be targeted?
> I could push to master or Plasma/5.22

I'm pushing to master, 5.22.5 is already released.
Comment 10 Bug Janitor Service 2021-09-03 07:39:21 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1037
Comment 11 Oleg Solovyov 2021-09-08 06:17:20 UTC
Git commit 9189bfea0a4ebb9bf5e1b3e055fb9440d23f5654 by Oleg Solovyov.
Committed on 08/09/2021 at 06:16.
Pushed by osolovyov into branch 'master'.

Deactivate virtual keyboard when hiding

When VK is activated, it's shown every time we click on user/password
inputs.

M  +1    -0    lookandfeel/contents/lockscreen/LockScreenUi.qml
M  +1    -0    sddm-theme/Main.qml

https://invent.kde.org/plasma/plasma-workspace/commit/9189bfea0a4ebb9bf5e1b3e055fb9440d23f5654