gnome keyboard settings panel enforces single iso-level3-shift key

Bug #1934761 reported by Julian Andres Klode
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
gnome-control-center (Ubuntu)
Fix Released
Medium
Gunnar Hjalmarsson

Bug Description

My Unicomp has a right windows key and alt key in swapped positions, so I configured right windows key to act as a second Alt_R (well ISO_Level3_Shift), using gnome-tweaks, leading to:

/org/gnome/desktop/input-sources/xkb-options
  ['caps:none', 'lv3:rwin_switch']

Opening the keyboard page in gnome settings resets this to

/org/gnome/desktop/input-sources/xkb-options
  ['caps:none', 'lv3:ralt_alt', 'lv3:rwin_switch']

Effectively disabling the Alt Gr (right alt key) from acting as level 3 shift.

Enabling right alt explicitly is not better. That sets

/org/gnome/desktop/input-sources/xkb-options
  ['caps:none', 'lv3:ralt_switch', 'lv3:rwin_switch']

and opening the keyboard panel then just deletes the windows key switch:

/org/gnome/desktop/input-sources/xkb-options
  ['caps:none', 'lv3:ralt_switch']

Not sure if it's a regression, but it's problematic anyway.

Tags: impish
summary: - gnome keyboard settings always set lv3:ralt_alt xkb option when
- lv3:rwin_switch is set
+ gnome keyboard settings enforces single iso-level3-shift key
summary: - gnome keyboard settings enforces single iso-level3-shift key
+ gnome keyboard settings panel enforces single iso-level3-shift key
Revision history for this message
Gunnar Hjalmarsson (gunnarhj) wrote :

When switching to g-c-c 40, the MR

https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/910

was included in Ubuntu as patches to avoid a worse regression. Your example shows that there is room for improvement of that upstream proposal. Apparently it hasn't been considered carefully enough how that new Settings -> Keyboard control plays together with using e.g. Tweaks for setting XKB options.

@Julian: It would be great if you could add your observation to the upstream MR.

Changed in gnome-control-center (Ubuntu):
importance: Undecided → Medium
status: New → Confirmed
tags: added: impish
Revision history for this message
Ian Douglas Scott (ids1024) wrote :

This issue was fixed in https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/994 which avoids changing `xkb-options` unless the Alternate Characters dialog is opened. (That was originally part of MR 910, but was split off so it could be merged without being blocked on design concerns.)

I've just added an additional commit to https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/910 to also not change `xkb-options` on opening the dialog unless the setting is actually changed, with is less necessary but probably an improvement.

Revision history for this message
Gunnar Hjalmarsson (gunnarhj) wrote :

Thanks for clarifying, Ian. My bad. I hadn't noticed that you had split off important stuff from !910.

So as regards Ubuntu I have added the !994 commits as patches for now, and also added your latest commit from !910.

Changed in gnome-control-center (Ubuntu):
assignee: nobody → Gunnar Hjalmarsson (gunnarhj)
status: Confirmed → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gnome-control-center - 1:40.0-1ubuntu5

---------------
gnome-control-center (1:40.0-1ubuntu5) impish; urgency=medium

  * d/p/keyboard-Create-CcXkbModifierDialog-only-when-used.patch,
    d/p/keyboard-Rename-XkbOption-and-XkbModifier-with-Cc-prefix.patch:
    - Avoid Alternate Characters Key unexpected behavior (LP: #1934761)
  * d/p/keyboard-Avoid-modifying-xkb-options-when-user-changes-n.patch:
    - Extra 'safety' (LP: #1934761)

 -- Gunnar Hjalmarsson <email address hidden> Thu, 19 Aug 2021 12:58:46 +0200

Changed in gnome-control-center (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.