No virtual keyboard on lockscreen

I switched to Wayland few days ago and i cant get virtual keyboard to work on lock-screen. It works on logout screen but it wont work on lock screen. Its very useful when i don’t see the keyboard in night so it kinda made me look back at x11 but i don’t want to go back.

I saw several similar topics but they have not helped. Here is what i did so far :
Added:

cat /etc/sddm.conf
[General]
InputMethod=qtvirtualkeyboard
[Theme]
Current=breeze
cat /etc/sddm.conf.d/virtualkeyboard.conf
InputMethod=qtvirtualkeyboard
System:
  Kernel: 6.12.68-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 15.2.1
    clocksource: tsc avail: hpet,acpi_pm
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-6.12-x86_64
    root=UUID=9e40c458-fb8c-41c9-8473-df1d639a2bd6 rw rootflags=subvol=@ quiet
    apparmor=1 security=apparmor
    resume=UUID=e1098956-513c-4552-99e9-3066c75e8288 udev.log_priority=3
  Desktop: KDE Plasma v: 6.5.5 tk: Qt v: N/A info: frameworks v: 6.22.0
    wm: kwin_wayland vt: 1 dm: SDDM Distro: Manjaro base: Arch Linux
Machine:
  Type: Desktop Mobo: ASRock model: B460M-HDV serial: <superuser required>
    uuid: <superuser required> Firmware: BIOS vendor: American Megatrends
    v: P1.60 date: 06/23/2020
CPU:
  Info: model: Intel Core i5-10400F bits: 64 type: MT MCP arch: Comet Lake
    gen: core 10 level: v3 note: check built: 2020 process: Intel 14nm family: 6
    model-id: 0xA5 (165) stepping: 3 microcode: 0x100
  Topology: cpus: 1x dies: 1 clusters: 6 cores: 6 threads: 12 tpc: 2
    smt: enabled cache: L1: 384 KiB desc: d-6x32 KiB; i-6x32 KiB L2: 1.5 MiB
    desc: 6x256 KiB L3: 12 MiB desc: 1x12 MiB
  Speed (MHz): avg: 4022 min/max: 800/4300 scaling: driver: intel_cpufreq
    governor: schedutil cores: 1: 4022 2: 4022 3: 4022 4: 4022 5: 4022 6: 4022
    7: 4022 8: 4022 9: 4022 10: 4022 11: 4022 12: 4022 bogomips: 69629
  Flags-basic: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: indirect_target_selection mitigation: Aligned branch/return thunks
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: reg_file_data_sampling status: Not affected
  Type: retbleed mitigation: Enhanced IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB: conditional;
    PBRSB-eIBRS: SW sequence; BHI: SW loop, KVM: SW loop
  Type: srbds mitigation: Microcode
  Type: tsa status: Not affected
  Type: tsx_async_abort status: Not affected
  Type: vmscape mitigation: IBPB before exit to userspace
Graphics:
  Device-1: NVIDIA GA104 [GeForce RTX 3060 Ti] vendor: EVGA driver: nvidia
    v: 590.48.01 alternate: nouveau,nvidia_drm non-free: 550-580.xx+
    status: current (as of 2025-11; EOL~2026-12-xx) arch: Ampere code: GAxxx
    process: TSMC n7 (7nm) built: 2020-2023 pcie: gen: 3 speed: 8 GT/s
    lanes: 16 link-max: gen: 4 speed: 16 GT/s ports: active: DP-1,HDMI-A-1
    empty: DP-2,DP-3 bus-ID: 01:00.0 chip-ID: 10de:2486 class-ID: 0300
  Display: wayland server: X.org v: 1.21.1.21 with: Xwayland v: 24.1.9
    compositor: kwin_wayland driver: X: loaded: nvidia
    gpu: nv_platform,nvidia,nvidia-nvswitch d-rect: 3840x1080 display-ID: 0
  Monitor-1: DP-1 pos: right model: ASUS VA24E serial: <filter> built: 2023
    res: mode: 1920x1080 hz: 60 scale: 100% (1) dpi: 93 gamma: 1.2
    size: 527x296mm (20.75x11.65") diag: 604mm (23.8") ratio: 16:9 modes:
    max: 1920x1080 min: 640x480
  Monitor-2: HDMI-A-1 pos: primary,left model: VY249HGE serial: <filter>
    built: 2024 res: mode: 1920x1080 hz: 60 scale: 100% (1) dpi: 93 gamma: 1.2
    size: 527x296mm (20.75x11.65") diag: 604mm (23.8") ratio: 16:9 modes:
    max: 1920x1080 min: 640x480
  API: EGL v: 1.5 hw: drv: nvidia platforms: device: 0 drv: nvidia device: 2
    drv: swrast gbm: drv: nvidia surfaceless: drv: nvidia wayland: drv: nvidia
    x11: drv: nvidia inactive: device-1
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 25.3.4-arch1.1
    glx-v: 1.4 direct-render: yes renderer: NVIDIA GeForce RTX 3060 Ti/PCIe/SSE2
    memory: 7.81 GiB display-ID: :1.0
  API: Vulkan v: 1.4.335 layers: 8 device: 0 type: discrete-gpu name: NVIDIA
    GeForce RTX 3060 Ti driver: nvidia v: 590.48.01 device-ID: 10de:2486
    surfaces: N/A
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor gpu: nvidia-settings,nvidia-smi
    wl: wayland-info x11: xdpyinfo, xprop, xrandr
Audio:
  Device-1: Intel Comet Lake PCH-V cAVS vendor: ASRock driver: snd_hda_intel
    v: kernel alternate: snd_soc_avs,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
    chip-ID: 8086:a3f0 class-ID: 0403
  Device-2: NVIDIA GA104 High Definition Audio vendor: EVGA
    driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 16
    link-max: gen: 4 speed: 16 GT/s bus-ID: 01:00.1 chip-ID: 10de:228b
    class-ID: 0403
  Device-3: Jieli GAMING HEADSET B2 driver: hid-generic,snd-usb-audio,usbhid
    type: USB rev: 1.1 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-10.3:8
    chip-ID: 3634:4155 class-ID: 0300 serial: <filter>
  API: ALSA v: k6.12.68-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: sndiod v: N/A status: off tools: aucat,midicat,sndioctl
  Server-2: JACK v: 1.9.22 status: off tools: N/A
  Server-3: PipeWire v: 1.4.10 status: active with: 1: pipewire-pulse
    status: active 2: pipewire-media-session status: active 3: pipewire-alsa
    type: plugin tools: pactl,pw-cat,pw-cli
Network:
  Device-1: Intel Ethernet I219-V vendor: ASRock driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:0d55 class-ID: 0200
  IF: eno1 state: up speed: 100 Mbps duplex: full mac: <filter>
  Device-2: Microsoft Xbox 360 Wireless Adapter driver: xpad type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-6:5 chip-ID: 045e:0719
    class-ID: ff00 serial: <filter>
  IF-ID-1: docker0 state: down mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Drives:
  Local Storage: total: 2.04 TiB used: 998.97 GiB (47.9%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Kingston model: SNV2S2000G
    size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
    lanes: 4 tech: SSD serial: <filter> fw-rev: SBM02103 temp: 32.9 C
    scheme: GPT
  ID-2: /dev/sda maj-min: 8:0 vendor: Patriot model: Blast size: 223.57 GiB
    block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s tech: SSD
    serial: <filter> fw-rev: 12.2 scheme: MBR
Partition:
  ID-1: / raw-size: 214.77 GiB size: 214.77 GiB (100.00%)
    used: 168.64 GiB (78.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
  ID-2: /home raw-size: 214.77 GiB size: 214.77 GiB (100.00%)
    used: 168.64 GiB (78.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
  ID-3: /var/log raw-size: 214.77 GiB size: 214.77 GiB (100.00%)
    used: 168.64 GiB (78.5%) fs: btrfs dev: /dev/sda1 maj-min: 8:1
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: no
  ID-1: swap-1 type: partition size: 8.8 GiB used: 781.7 MiB (8.7%)
    priority: -2 dev: /dev/sda2 maj-min: 8:2
Sensors:
  System Temperatures: cpu: 43.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 16 GiB available: 15.54 GiB used: 3.5 GiB (22.5%)
  Processes: 333 Power: uptime: 23h 46m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 3 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 6.19 GiB services: org_kde_powerdevil,upowerd
    Init: systemd v: 258 default: graphical tool: systemctl
  Packages: 2009 pm: pacman pkgs: 1988 libs: 493 tools: pamac,yay pm: flatpak
    pkgs: 0 pm: snap pkgs: 21 Compilers: clang: 21.1.6 gcc: 15.2.1 Shell: Zsh
    v: 5.9 default: Bash v: 5.3.9 running-in: konsole inxi: 3.3.40

Mod edit: Converted blockquotes to code formatting. :wink:

Edit: Typos

I don’t have a resolution for you.

At best, all I can do is to confirm that the virtual keyboard isn’t launching via the Lock Screen on my Plasma system, either – I’m not certain it ever did – though, I typically don’t launch it from the Lock Screen in any case.


I note that InputMethod=qtvirtualkeyboard isn’t needed anymore under [General] in sddm.conf – that is, as long as the same standalone entry exists (without the [General] header) in /etc/sddm.conf.d/virtualkeyboard.conf drop-in file.

The drop-in file entry is the new default (for KDE only). :eyes:


Your virtual keyboard seems to be working otherwise, and there is really very little to troubleshoot, in terms of settings.

I’ve not seen any forum topics on this for comparison.
Let’s see if others have noticed anything similar.

2 Likes

Same here. I do recall, the old Mallet virtual keyboard launching there on X11.

EDIT:
It is possible the Virtual Keyboard is only active when running in Tablet mode, which, of course, is not active when using a Keyboard and Mouse, even though there is a button there for initiating it.

2 Likes

If this is true, this is something KDE might be interested in; perhaps it’s an (as yet) undiscovered issue; a condition unforeseen by KDE devs; though, a cursory search hasn’t revealed any related bug reported.


It may be worthwhile asking a few questions on KDE Discuss, in the first instance, to determine how well known this condition might be.

3 Likes

Seems similar to

1 Like

It didn’t help but thanks.

Do you have a configuration for it?

List the configuration /etc/sddm.conf.d/ possibly named virtualkeyboard.conf

InputMethod=qtvirtualkeyboard

Which is provided by qt6-virtualkeyboard package.

Then check System SettingsKeyboard if you have a virtual keyboard defined.

Then check System SettingsWorkspaceGeneral BehaviourTouch configuration.

No change, sorry.

Well - cannot say what your issue may be - I am thinking the touchscreen do not correctly identify itself as such.

I have a portable monitor with touch which connects using an USB cable and with that monitor attached - the virtual display becomes available.

But it could be a bug in plasma - I don’t know - in such case it may have been fixed with later version.

3 Likes

According to the Help popup on the Virtual Keyboard page of System Settings.

will be automatically enabled when there is no hardware keyboard detected


Moderator edit: Corrected your formatting. Invoice is in the mail. :stuck_out_tongue:

Irrespective of that information found, the virtual keyboard works as expected from the SDDM or Plasma-Login screens (depending which is used) whether or not a physical keyboard is present.

I imagine it’s yet another case of documentation wording not fitting the intended description.

2 Likes