abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/KeyboardData.java
AgeCommit message (Collapse)AuthorFilesLines
2022-06-06Don't add extra keys to the numeric paneJules Aguillon1-13/+19
2022-05-29Automatically place localized keys on the layoutsJules Aguillon1-18/+77
Layouts no longer need to mention every localized keys and dead keys. They are now placed automatically starting from the second row on the bottom-right corner. The "loc " prefix is not removed to still be able to define a more optimal and consistent placement for some extra keys (eg. 'ß' near 's'). Programming layouts no longer need to place every dead keys.
2022-05-08Better handling of removed keys and swipe getureJules Aguillon1-20/+4
The "closest key" logic must be careful not to reveal keys removed by a modifier. Must check [_handler.onPointerSwipe] for every candidate values. [selected_value] is changed back to [selected_direction]. This adds a new bug: When the direction change, the selected value might not change but a vibration will be triggered anyway.
2022-05-08Improve nearest key computationJules Aguillon1-76/+32
getAtDirection was too hard to maintain and might contain bugs. Change slightly the meaning of directions and implement a the nearest key calculation as a loop.
2022-05-08only vibrate when the swipe key changesRodrigo Batista de Moraes1-10/+12
2022-05-08use the closest swipe key on swipeRodrigo Batista de Moraes1-6/+90
fix a direction
2022-04-16Fix compatibility with Android 6Jules Aguillon1-1/+4
Android 6 uses Java 1.7, the only incompatible feature in use was lambdas.
2022-03-19Allow modifiers to hide keysJules Aguillon1-0/+12
Modifiers can temporarily remove a key from the layout by returning 'null'. Make sure pointer handling code handle these modified keys gracefully and doesn't trigger a key event and a vibration for the removed key.
2022-03-05Improve the code for dynamic updates of the layoutJules Aguillon1-65/+4
2022-02-13Scale the bottom row depending on the host layoutJules Aguillon1-10/+31
1ff8526 added a bug for layouts that weren't 10 units wide.
2022-02-07Define the bottom row separatelyJules Aguillon1-57/+76
Avoid divergences when the bottom row is modified.
2022-02-06Allow egde keys instead of corner keys (swipe vertically/horizontally)Max Schillinger1-3/+12
Add a new boolean parameter "edgekeys" for defining keys that have the additional (swipe) keys on the edges (top, right, left, bottom) instead of at the corners (top left, top right, bottom left, bottom right).
2022-01-10Swap the Enter and Action keys when neededJules Aguillon1-0/+26
When IME_FLAG_NO_ENTER_ACTION is set.
2022-01-09Add the Action keyJules Aguillon1-11/+21
It is placed on the top-right of the enter key on every layouts. It sends a special event (performEditorAction) instead of writing a newline. The "actionId" is passed through the EditorInfo object in an obfuscated way so it's not clear whether it's using the right one.
2021-12-19Auto-format Java and XML filesJules Aguillon1-49/+49
Use xmllint. Re-indent Java files using spaces.
2021-04-29Slightly reduce the size of the bottom rowJules Aguillon1-31/+39
2021-04-18Separate handling of modifiers from KeyValue classJules Aguillon1-2/+2
KeyValue defines an ADT and some of its values, it now contains public final fields and no internal logic. KeyModifier handles modifiers and accents and creates new instances of KeyValue when needed. This operation is now properly cached.
2021-04-18Hide the input switching key if it's not neededJules Aguillon1-0/+12
Android has a new way of switching between input methods and this key need to be hidden in most cases.
2021-04-17Remove fixed keyboard widthJules Aguillon1-22/+20
Remove the constant of keys per rows. Add the 'shift' attribute to declare eventual alignment/blanks in layouts.
2021-04-15Stateless KeyboardData classJules Aguillon1-68/+110
It was a pain to use. It was also a pain to write this though.
2021-04-13Add an option to toggle accent keysJules Aguillon1-0/+21
These keys are not useful at all in English. A new option allows to hide them, [false] by default.
2015-08-01Stop storing keydown data in KeyboardData.Keyjuloo1-26/+0
2015-08-01Replace key_margin with key_bg_padding + Add {vertical,horizontal}_marginjuloo1-2/+2
2015-07-31Create KeyboardData class and handle move on keysjuloo1-0/+139