Bug 864785

Summary: /etc/X11/xorg.conf.d/01-anaconda-keyboard.conf causes X to default Alt+Shift to ISO_Next_Group
Product: [Fedora] Fedora Reporter: Jens Petersen <petersen>
Component: anacondaAssignee: Vratislav Podzimek <vpodzime>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 18CC: awilliam, g.kaviyarasu, jonathan, panormitis, steelside, vanmeeuwen+fedora
Target Milestone: ---Keywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: anaconda-18.20-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-11-23 04:22:50 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jens Petersen 2012-10-10 06:30:49 UTC
Description of problem:
Anaconda installs /etc/X11/xorg.conf.d/01-anaconda-keyboard.conf
which causes X to default Alt+Shift to ISO_Next_Group.
This is rather annoying for users for emacs and xmonad, etc
that use Alt+Shift as a modifier.

Version-Release number of selected component (if applicable):
anaconda-18.12

How reproducible:
every time

Steps to Reproduce:
1. net install F18 Beta TC3 with Basic X Windows install
2. start X session (not gnome or other desktop environment)
3. run xev in terminal, and press Alt+Shift
  
Actual results:
3. xev output shows Alt+Shift gives ISO_Next_Level.

Expected results:
3. Alt+Shift to give separate Alt_L and Shift_L modifiers as normal.

Additional info:
Anaconda should not need ISO_Next_Level unless it is configuring more than
one xkb layout.

Comment 1 Jens Petersen 2012-10-10 06:40:23 UTC
Removing /etc/X11/xorg.conf.d/01-anaconda-keyboard.conf
which contains:

  Option  "XkbOptions"   "grp:alt_shift_toggle"

works around the problem.

Comment 2 Jens Petersen 2012-10-10 06:50:53 UTC
This has been happening since F18 Alpha btw.

Comment 3 Chris Lumens 2012-10-10 12:52:41 UTC
Perhaps we should only write that out if more than one keyboard has been configured during installation.

Comment 4 Vratislav Podzimek 2012-10-11 11:10:05 UTC
(In reply to comment #3)
> Perhaps we should only write that out if more than one keyboard has been
> configured during installation.
This is probably the best solution for now. The "Options" button on the Keyboard spoke is supposed to open a dialog for choosing layout switching combination, but this is yet to be implemented.

Jens, are you okay with the proposed solution for now?

Comment 5 Vratislav Podzimek 2012-10-22 16:40:46 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > Perhaps we should only write that out if more than one keyboard has been
> > configured during installation.
> This is probably the best solution for now. The "Options" button on the
> Keyboard spoke is supposed to open a dialog for choosing layout switching
> combination, but this is yet to be implemented.
Patches with the implementation posted to anaconda-patches list.

Comment 6 Adam Williamson 2012-11-23 04:22:50 UTC
This bug looks to have been fixed for many anaconda builds now but missed being closed. If you find you are still experiencing it with Fedora 18 Beta (RC1) or later, please re-open the bug.

(note the 'options' button mentioned in comment #4 has now been implemented, so if installing multiple keyboards, you can change the layout switching key combination during install, though I don't know if it's been tested that the chosen setting is correctly transferred to the installed system.)

Comment 7 Daniel Sjoholm 2013-02-20 19:55:56 UTC
This bug is still present in release version.
Installed from the DVD, and I've got an 00-anaconda.keyboard.conf that contains


#This file was generated by the Anaconda installer
Section "InputClass"
        Identifier      "anaconda-keyboard"
        MatchIsKeyboard "on"
        Option  "XkbLayout"     "se"
        Option  "XkbOptions"    "grp:alt_shift_toggle"
EndSection

Comment 8 Adam Williamson 2013-02-20 20:10:51 UTC
if you picked anything but English (U.S.) for language, did *not* check the box at the bottom of that screen (something about 'set keyboard layout to default for my language'), and made no changes to the Keyboard spoke, that is actually what I'd expect. If you pick a non-English language and don't check the checkbox, the default keyboard configuration is to set up U.S. English as the default keyboard and what anaconda guesses is your 'native' keyboard layout as a secondary keyboard; two keyboards, hence the alt-shift toggle is included.

It does seem a bit odd that we go with alt-shift as the default toggle in newUI, though, as in oldUI the default toggle was left-shift+right-shift. I'm not sure this change was intentional, and I rather suspect the old default was intentionally picked *not* to conflict with common combinations used in text editors etc. So maybe we ought to go back to shift+shift as the default.

Comment 9 Daniel Sjoholm 2013-02-20 20:23:20 UTC
This is how I went through the install (well, relevant parts):
Selected English (UK) as my install language, went into keyboard settings and added Swedish, then proceeded to remove both English UK & English USA variants, so that Swedish was my only available layout.

I would have assumed that this would stop adding any kind of modifiers like this, as I only have one keyboard layout selected anyhow.
I did not look for any of those options that you mention, however, as I did not think they would be relevant.

I have just been googling for why KDE refused to accept alt+shift in shortcuts, and it took some time before I ended up here and could solve it, it wasn't exactly clear where the issue was to me. 

For me this wouldn't have happened though if anaconda checked that there was only 1 layout selected, and thus never enabled the toggle, cause there's nothing to switch to then anyhow, right?
However, I think that left shift+right shift sounds like a much better combination for this.

Comment 10 Adam Williamson 2013-02-20 20:36:21 UTC
I think at the point you added a second layout it may have automatically set the toggle. I'll experiment with your reported reproduction path and see if I can trigger it.

Comment 11 Daniel Sjoholm 2013-02-20 20:42:42 UTC
Okay, sounds good.
But anyhow, if you succeed or not - left-shift+right-shift is probably the better toggle out of the two.
(By the way, reading my previous message it sounds a bit harsh, this was not intended).

Comment 12 Vratislav Podzimek 2013-02-21 09:30:08 UTC
Anaconda is supposed to set the toggle only when non-English language is selected and the 'set keyboard layout to default for my language' is not checked so that two layouts are configured by default. In all other cases toggle is not expected to be set automatically. If it is, then it is a bug.

If you think we should use a different key combination for toggle, please open a new bug with that suggestion so that the discussion can take place there.