3

When pressing Ctrl+Alt+Shift the system registers only two keys. It is very inconvenient when working in IDEs like IntelliJ IDEA. Is there a workaround for this?

FocusIn event, serial 21, synthetic NO, window 0x7000001,
    mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 21, synthetic NO, window 0x0,
    keys:  0   0   0   0   16  0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 21, synthetic NO, window 0x7000001,
    atom 0x147 (_NET_FRAME_EXTENTS), time 4648350, state PropertyNewValue

PropertyNotify event, serial 21, synthetic NO, window 0x7000001,
    atom 0x150 (_NET_WM_STATE), time 4648350, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x7000001,
    atom 0x150 (_NET_WM_STATE), time 4648351, state PropertyNewValue

PropertyNotify event, serial 33, synthetic NO, window 0x7000001,
    atom 0x1a0 (_NET_WM_ICON_GEOMETRY), time 4648358, state PropertyNewValue

KeyRelease event, serial 34, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4648396, (429,225), root:(3197,689),
    state 0x10, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
    XFilterEvent returns: False

KeyPress event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651118, (429,225), root:(3197,689),
    state 0x10, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651193, (429,225), root:(3197,689),
    state 0x14, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651195, (429,225), root:(3197,689),
    state 0x15, keycode 64 (keysym 0xfe08, ISO_Next_Group), same_screen YES,
    XKeysymToKeycode returns keycode: 50
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651256, (429,225), root:(3197,689),
    state 0x2015, keycode 38 (keysym 0x41, A), same_screen YES,
    XLookupString gives 1 bytes: (01) ""
    XmbLookupString gives 1 bytes: (01) ""
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651376, (429,225), root:(3197,689),
    state 0x2015, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651378, (429,225), root:(3197,689),
    state 0x2011, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651387, (429,225), root:(3197,689),
    state 0x2010, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 37, synthetic NO, window 0x7000001,
    root 0x1e9, subw 0x0, time 4651387, (429,225), root:(3197,689),
    state 0x2010, keycode 38 (keysym 0x61, a), same_screen YES,
    XLookupString gives 1 bytes: (61) "a"
    XFilterEvent returns: False

ClientMessage event, serial 37, synthetic YES, window 0x7000001,
    message_type 0x142 (WM_PROTOCOLS), format 32, message 0x139 (WM_DELETE_WINDOW)
Ava
  • 191
  • 7
  • This shouldn't happen. Does this happen in every application or only in IntelliJ? Open a terminal, run the command `xev`, focus the xev window (but avoid moving the mouse cursor over it because that would produce a lot of output that we don't care about), press Ctrl+Alt+Shift+A, then go back to the terminal and press Ctrl+C. Copy-paste the output from xev starting with the `FocusIn` event (we don't need the startup stuff before that) into your question. – Gilles 'SO- stop being evil' Sep 16 '20 at 19:33
  • Added it. I checked in other apps and I noticed that when I try to assign a shortcut to Alt+Shift in Window Manager it changes to "Next Group" instead of "Alt+Shift". Similar with more keys but it depends on the order of pressing e.g. Ctrl+Shift+Alt (in that order) becomes Shift+Ctrl+Next Group and Alt+Shift+Ctrl becomes Alt+Control L. – Ava Sep 16 '20 at 19:50
  • 1
    Ok, your keyboard layout is set up in a way that (left) Alt becomes `ISO_Next_Group` when Shift is pressed. I don't know what settings would result in that, but it's probably visible in the keyboard configuration interface (I guess it's an XKB option). – Gilles 'SO- stop being evil' Sep 16 '20 at 20:13
  • Thank you, that was it. I've answered with my solution. Not perfect, but works for me. – Ava Sep 16 '20 at 20:21

1 Answers1

4

I figured it out. The problem was that Alt+Shift shortcut was recognised as a special Next Group key which was used for keyboard layout switching. I'm not sure how to change the shortcut for layout switching but I managed to find a way to just delete it.

Open /etc/default/keyboard with a text editor and delete grp:alt_shift_toggle from XKBOPTIONS. In my case I had to change this line:

XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll,terminate:ctrl_alt_bksp"

to

XKBOPTIONS="grp_led:scroll,terminate:ctrl_alt_bksp"

Then just reboot (I'm sure that there is another way but reboot was the easiest). Now Alt+Shift won't be recognised as Next Group.

Ava
  • 191
  • 7