Keyboard Layout - elementary/installer GitHub Wiki

You need to be able to set your keyboard layout early on, before being able to “try” or use any screen with a keyboard input. Since it’s mentally related to language, we put it immediately after.

Currently, Ubiquity shows two columns, the top-level and the specific layout. It also shows an entry to test the layout, plus a “Detect Keyboard Layout” button that spawns a dialog to have you press a bunch of keys to determine the layout (inherited from Debian installer).

At the very least, we need a method to choose a top-level and specific layout. We should choose the pre-selected layout based on the selected language.

Top-level screenshot

If there are multiple valid sub-layouts, we append an ellipsis (…) to the row and use a stack switcher to show them, along with a back button to go back and choose a different top-level layout. If there is only one valid layout, we just select it without using the stack switcher.

Specific layout screenshot

Below the layouts, we provide an entry to test the currently-selected layout, along with a button to preview the layout visually.