abouttreesummaryrefslogcommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-07-06Make the emoji and clipboard bottom rows consistentJules Aguillon1-3/+3
2024-07-06Clipboard pane (#681)Jules Aguillon43-7/+711
This adds the clipboard pane, which allows to save an arbitrary number of clipboards and to paste them later. The key can be disabled in settings. Checking the "Recently copied text" checkbox will cause the keyboard to keep a temporary history of copied text. This history can only contain 3 elements which expire after 5 minutes. If this is unchecked, no history is collected. History entries can be pinned into the persisted list of pins.
2024-07-06Fix crash with narrow layoutsJules Aguillon1-1/+1
The PreferredPos mechanism cause an out of bound access since 773147a.
2024-07-06Update Russian translation (#689)solokot1-2/+2
2024-07-03doc: Clarify the possible key valuesJules Aguillon2-7/+8
2024-06-30Update Ukrainian translation (#682)Sergiy Stupar1-2/+2
2024-06-30doc: Correct mentions of gesturesJules Aguillon1-5/+7
2024-06-30Option to disable key repeatJules Aguillon20-35/+53
Internally "key repeat" is reword into "long press" when the same mechanism was used for both features. The constraint that 'timeoutWhat' must be set to '-1' when no message is expected has been lifted to simplify the code.
2024-06-30settings: Reword "Key repeat" into "Long press"Jules Aguillon17-17/+17
The long press timeout is used for long press on keys that do not repeat, for example the keyboard switching key. This must be detached from the key repeat as it might be disableable in the future and more keys might be longpressable.
2024-06-29Validate more fields in custom layoutsJules Aguillon1-5/+11
This adds some errors: - 'script' or 'numpad_script' is set an empty string. - Multiple '<modmap>' elements. - 'shift', 'width' and 'height' on every nodes that support them are clamped to a valid value.
2024-06-24Set preferred position for Norwegian extra keysJules Aguillon1-1/+1
This should make the QWERTY (US) layout look the same to Norwegian users as the current latn_qwerty_no layout, allowing it to be changed.
2024-06-24Remove 'loc' keys from latn_qwerty_usJules Aguillon2-30/+30
Use the "preferred position" feature to place the removed keys approximately where they were.
2024-06-22doc: Where to put <modmap> (#666)Spike1-17/+36
* Modmap: Where to put it; cancelling built-in mods (#665) * Correct per Julow: not only Euro layouts * Post-edit: Doesn't depend on "built-in" layout * P-vs-L: Change "That is to say", sentence is not a restatement * Discussion with Julow: Swipe graphic to HTML; at most one modmap * Swipes: Center tables
2024-06-22Don't stop keyrepeat after a circle gestureJules Aguillon1-1/+0
This was inconsistent with the anticircle and roundtrip gestures.
2024-06-16Update Ukrainian translation (#670)Sergiy Stupar1-5/+5
2024-06-16Update German translations (#667)alotbsol5551-5/+5
2024-06-16Don't change input view when configuration changesJules Aguillon1-1/+1
This doesn't seem necessary and won't play well with eventual keys that change the configuration.
2024-06-16Launcher activity: Don't consume events in text fieldJules Aguillon1-5/+9
Allow the keybindings to have an effect in the "Try here" text field.
2024-06-16Refactor: Remove unecessary view in emoji paneJules Aguillon1-3/+1
2024-06-11Update Russian translation (#656)solokot1-6/+6
2024-06-09Option to tweak or disable the circle gestureJules Aguillon21-1/+101
2024-06-09Use preferred dir when placing a key next to an otherJules Aguillon1-2/+8
2024-06-09Automatic placement of f11/f12 placeholdersJules Aguillon38-95/+121
2024-06-09Allow to remove keys Tab and EscJules Aguillon53-106/+110
2024-06-09Refactor: Remove the KeyModifier cacheJules Aguillon1-29/+3
2024-06-09Move diacritics mapping to the compose state machineJules Aguillon24-769/+628
This replaces the switch cases in KeyModifier.java with JSON files, one for each diacritic. The number of states increases from 6727 to 7377. The apk size slightly decreases (around 3kb).
2024-06-09compose: Compile several starting statesJules Aguillon3-197/+218
Sequences from several files are no longer merged but compiled to separate starting states. The plan is to use that to represent the diacritics.
2024-06-09compose: Fix misbehaving due to encoding errorsJules Aguillon3-218/+215
Encoding errors in the compose data compiler due to: - 'UTF-16' adds a BOM, use 'UTF-16-LE' instead - 'str.encode' returns a byte array, use 'array' to have a 16-bit char array.
2024-06-08Update check_layout.outputJules Aguillon1-1/+2
2024-06-08Flesh out custom layout doc (#651)Spike2-75/+84
2024-06-06Don't cap indication lengthJules Aguillon1-2/+5
This was inadvertently changed when the anti-circle gesture was introduced, which use the same rendering logic.
2024-06-05latn_qwerty_pl: Consistent placement for รณJules Aguillon1-2/+2
Co-authored-by: @ZX-Commodore-ST
2024-05-29Add compose sequences for Greek, Cyrillic, Hebrew and moreJules Aguillon3-166/+2255
Parse key names from keysymdef.h, which is distributed with Xorg. The Greek, Cyrillic and Hebrew sequences referenced these keysyms. This increases the number of sequences from 2043 to 2668.
2024-05-29Allow compose sequence ending with more symbolsJules Aguillon3-162/+191
Change the compose state machine definition to allow final states that are wider than 16-bits. This increases the number of sequences that can be used from en_US_UTF_8_Compose.pre from 2013 to 2043 (of 3201).
2024-05-29Release 1.28.0Jules Aguillon2-2/+13
2024-05-29Increase target SDK to 34Jules Aguillon2-3/+3
2024-05-29Fix overflow due to navigation on the right and cutouts (#641)Jules Aguillon1-0/+15
Take display cutouts and navigation bars when computing the keyboard width on SDK >= 30.
2024-05-29Configure anticircle gesture per-key (#644)Jules Aguillon5-20/+53
This adds the new 'anticircle' attribute to layouts '<key>' elements that configure the key to send when doing a anti-clockwise circle gesture on it. Labels are drawn the same way as indication. Updated docs.
2024-05-29Fix uninitialized bottom_row when editing custom layoutJules Aguillon3-33/+49
This happen when opening the settings from the launcher activity without ever opening the keyboard. To remove this bug entirely, the KeyboardData.init method is removed, the pieces needing initialization are now cached in Config.
2024-05-27Fix off-by-one error in 1-row layoutsJules Aguillon1-1/+1
2024-05-26Support the nnbsp characterJules Aguillon2-1/+3
2024-05-26Update check_layout.outputJules Aguillon1-1/+2
Was outdated since previous commit
2024-05-25Add missing characters to hang_dubeolsik_krJules Aguillon1-35/+24
2024-05-25Add custom layout documentation in `doc/` (#643)JapanYoshi2-0/+255
2024-05-25Circle and round trip gestures (#640)Jules Aguillon4-41/+273
This implements clockwise/anticlockwise circle and round trip gestures inspired by Messagease. The circle gestures start after a small threshold to avoid making the regular swipe too hard to aim. The gestures do: - circle: The center symbol with Shift applied, with a fallback on Fn - round trip: Same as the circle gesture but applied to a side symbol - anticlockwise circle: Nothing currently. It is intended to be made configurable per-layout in the future. The new Gesture class keeps track of what the pointer is doing while it moves on a key. It replaces the 'selected_direction' integer.
2024-05-12Update NixOS wiki link (#633)NACAMURA Mitsuhiro1-1/+1
2024-05-08Pull the emoji list from unicode.org (#612)Quinn Cypher6-3860/+4621
- Removing unused information (names and descriptions) from the Emoji class - Creating a Gradle task that generates a more efficient res/raw/emojis.txt file from the most recent Unicode standard - Saving recently used emoji preferences as emoji values rather than names - Migrating old user preferences to the new system
2024-05-08Compass-point synonyms for edge keys in layouts (#628)Spike1-19/+34
2024-05-05Add settings button to launcher app (#629)alotbsol5553-0/+27
2024-05-02Hangul support (#595)Jules Aguillon3-2/+170
* Hangul support This works with two new kinds of keys (Hangul_initial and Hangul_medial) that carry a precomposed hangul syllable and act as modifiers. The hangul syllables are composed algorithmically. * Add shift layer to Dubeolsik layout