xpra icon
Bug tracker and wiki

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

Version 22 (modified by Antoine Martin, 6 years ago) (diff)




Keyboard handling is an area that needs improving.
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)
  • 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
  • On Posix systems, ensure that your distribution supports setxkbmap -query (most recent distributions do)

Pending Bugs

  • Input methods don't work by default: #634
  • Supporting multiple layouts and switching layouts reliably and/or manually: #230, #166, #86
  • Multiple keys / meta: #668, #759
  • Keyboard sync may end up pressing the wrong key: #222
  • Input grabs: #139
  • Hidden keyboard state: #1238

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):

  • 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 (version 0.15 onwards only)
  • 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: