Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-89808

Core keyboard keymap and modifier states used for non-core keyboard keypresses

XMLWordPrintable

    • Linux/X11

      To reproduce, create a non-core pointer/keyboard pair and assign your mouse/keyboard to it:

      xinput list  # note the id numbers for your keyboard/mouse
      xinput create-master test
      xinput reattach <mouse-id> "test pointer"
      xinput reattach <keyboard-id> "test keyboard"
      

      Note that your mouse will have a new cursor independent from the other one (which may remain visible).

      Then click in any Qt application and try typing using modifier keys (eg, Shift). Despite pressing Shift, everything will be lowercase (because Qt is checking the core keyboard's Shift state, not the state for your "test keyboard"). Similarly, if you assign a keymapping to your keyboard device (xkbcomp with the -d option), it will be ignored and the core keyboard's mapping used instead.

      To restore your system back to normal:

      xinput reattach <mouse-id> "Virtual core pointer"
      xinput reattach <keyboard-id> "Virtual core keyboard"
      xinput remove-master "test keyboard"

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            liaqi Liang Qi
            lukedashjr Luke Dashjr
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                There are no open Gerrit changes