xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

We have moved

This page has been moved to https://github.com/Xpra-org/xpra/blob/master/docs/Features/Keyboard.md

Archived copy:



Keyboard handling is an area that could do with some improvements.
We currently use the core X11 api, but we should be moving to Xkb, or maybe the xkbcommon wrapper (#371).

Solved Bugs

  • When connecting over high latency links, use the --no-keyboard-sync option to prevent keys from repeating. This toggle is also accessible from the system tray menu. (this switch may cause other problems though)
  • keyboard shortcuts: #1657
  • US layout and most common layouts should work ok.
  • If starting xpra from an environment which has non-standard input methods, this can interfere, see #286
  • Input methods don't work by default: #634
  • Supporting multiple layouts and switching layouts reliably and/or manually: #230, #166, #86, #1607, #1665, #1380
  • Multiple keys / meta: #668, #759
  • Input grabs: #139

Pending Bugs

  • Keyboard sync may end up pressing the wrong key: #222
  • Hidden keyboard state: #1238
  • Xkb: #1049
  • layout detection: #2983

Reporting Bugs

First, please check the bugs above to see if any match your problem or seems related. Failing that, make sure to read the reporting bugs guidelines and generally you will need to include (select those that apply):

  • there is a keyboard debugging tool which can be launched using xpra keyboard-test
  • active keyboard layout(s)
  • input methods
  • keyboard related configuration setup/files
  • keyboard type
  • client and server log output with the -d keyboard debugging switch
  • whether the bug is also present with/without --no-keyboard-sync
  • setxkbmap -print and setxkbmap -query (both directly in the client if it supports those commands and in the xpra session)
  • Keymap_info.exe on MS Windows, or xpra/gtk_common/keymap.py everywhere else
  • xmodmap -pke and xmodmap -pm (again on both)
  • xkbprint -label name $DISPLAY
  • if the problem is affecting specific keys, you may want to use the environment variable XPRA_DEBUG_KEYSYMS=keyname1,keyname2 on the server to log the keyboard mapping process for those keys
  • xev output of the misbehaving key events
  • running both the server and the client with the debug option -d keyboard, or for very verbose debugging: -d keyboard,verbose
  • gather information using the test scripts:
Last modified 17 months ago Last modified on 02/06/21 13:58:59