abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/LayoutsPreference.java
AgeCommit message (Collapse)AuthorFilesLines
2024-01-01Remove unsupported API readAllBytesJules Aguillon1-2/+1
2023-12-17prefs: Use QWERTY (US) as the default custom layoutJules Aguillon1-1/+17
This layout definition contains some documentation and is a better default than no text.
2023-12-17prefs: Report errors while editing custom layoutsJules Aguillon1-0/+13
Errors are obtained by running the parser, validation is throttle to when the user stops editing for a second.
2023-12-10prefs: Render line numbers in custom layout input boxJules Aguillon1-21/+11
Line numbers will help reporting errors. Also, disable line breaking to improve readability.
2023-08-16Migrate layouts preferencesJules Aguillon1-0/+6
The new `layouts` preference replaces three previous preferences: layout second_layout custom_layout Add a preference migration function, which first migration is to migrate layouts into the new preference. The migration must also be called from the SettingsActivity as it might use a different preference store due to the boot-aware preference copy.
2023-08-16LayoutsPreference: Remove cross button for custom layoutsJules Aguillon1-5/+13
Remove the cross button on the right of custom layouts to reduce accidental removal. A remove button is added in the dialog for modifying the layout.
2023-08-16LayoutsPreference: Modify custom layoutJules Aguillon1-5/+18
Clicking on a custom layout opens a dialog for modifying the layout description instead of the dialog for selecting a layout.
2023-08-16Allow multiple custom layoutsJules Aguillon1-16/+157
This merges the "Layouts" option with the "Custom layout" option. A custom layout becomes an item in the "Layouts" list among the other layouts. It's possible to add several custom layouts. Selecting the "Custom layout" item in the list opens a second dialog for entering the layout description. Layouts are serialized as JSON object and are decoded solely in the LayoutsPreference class.
2023-08-16CustomExtraKeysPreference: Reusable edit text layoutJules Aguillon1-2/+3
This layout is generically used by CustomExtraKeysPreference and LayoutsPreference.
2023-08-16ListGroupPreference: Make items abstractJules Aguillon1-2/+7
Allow items to be of any class instead of strings. Item serialization and deserialization methods are in a separate class because they are also used in a static context.
2023-08-06LayoutsPreference: Show layout display namesJules Aguillon1-4/+7
The internal name of layouts was rendered.
2023-07-30Allow more than 2 layoutsJules Aguillon1-0/+89
The two layout selection options are replaced by a ListGroupPreference that allow to enter an arbitrary amount of layouts. The "switch_second" and "switch_second_back" keys are replaced by "switch_forward" and "switch_backward", which allow to cycle through the selected layouts in two directions. Layouts are changed to place these two key on the space bar. The backward key is not shown if there's only two layouts.