Canadian French keyboard is offered after selecting Canadian English
What Happened?
When I install the Sponsor RC for eOS 8, I select Canadian English and then I'm offered the French Canadian keyboard (likely because it's the only Canadian keyboard)
Steps to Reproduce
- Attempt to install eOS 8
- Select English
- Select Canada
- Be offered the French Canadian keyboard
Expected Behavior
- Select English
- Select Canada
- Be offered the standard US keyboard
OS Version
8.x (Early Access)
Session Type
Classic Session (X11, This is the default)
Software Version
Latest release (I have run all updates)
Log Output
No response
Hardware Info
No response
(likely because it's the only Canadian keyboard)
This seems to be correct. We set the layout as default whose name matches with the user chosen country here:
https://github.com/elementary/installer/blob/4ad60d99515762b4623fe3b1b41634af274258a7/src/Views/KeyboardLayoutView.vala#L169-L188
And looking at /usr/share/X11/xkb/rules/base.xml which we parse to get the list of layouts the country name of Canadian ca matches French (Canada) keyboard:
<layout>
<configItem>
<name>ca</name> ←Current Layout
<!-- Keyboard indicator for French layouts -->
<shortDescription>fr</shortDescription>
<description>French (Canada)</description>
<countryList>
<iso3166Id>CA</iso3166Id>
</countryList>
<languageList>
<iso639Id>fra</iso639Id>
</languageList>
</configItem>
<variantList>
<variant>
<configItem>
<name>fr-dvorak</name>
<!-- Keyboard indicator for French layouts -->
<shortDescription>fr</shortDescription>
<description>French (Canada, Dvorak)</description>
</configItem>
</variant>
<variant>
<configItem>
<name>fr-legacy</name>
<!-- Keyboard indicator for French layouts -->
<shortDescription>fr</shortDescription>
<description>French (Canada, legacy)</description>
</configItem>
</variant>
<variant>
<configItem>
<name>multix</name>
<description>Canadian (CSA)</description>
</configItem>
</variant>
<variant>
<configItem>
<name>eng</name> ←Expected Layout
<!-- Keyboard indicator for English layouts -->
<shortDescription>en</shortDescription>
<description>English (Canada)</description>
<languageList>
<iso639Id>eng</iso639Id>
</languageList>
</configItem>
</variant>
<variant>
<configItem>
<name>ike</name>
<!-- Keyboard indicator for Inuktikut layouts -->
<shortDescription>ike</shortDescription>
<description>Inuktitut</description>
<languageList>
<iso639Id>iku</iso639Id>
</languageList>
</configItem>
</variant>
</variantList>
</layout>