Commit Graph

95 Commits

Author SHA1 Message Date
Jules Aguillon
092b8e1c15 Fix recently introduced crash 2021-05-09 12:14:56 +02:00
Jules Aguillon
1a18ea56ca Fix NullPointerException when ready options from subtypes
Seems like subtypes might not match what is declared. Must protect
against that.
2021-05-09 01:07:43 +02:00
Jules Aguillon
68945ff227 Restore support for Android < 12, set minimal version to 4
API level 12 is required for "subtype" code introduced in 1.7.
This adds a fallback for older version, "subtype" features are not
available but the keyboard is usable.

Changet he minimal version to 4 to be able to query the API level.

Using integer constant for versions because that's how it's presented in
the documentation. Build.VERSION_CODES is WTF.
2021-05-09 00:56:59 +02:00
Jules Aguillon
7a3312fd01 Add the accents preference
This replaces the "disable accent keys" checkbox.
The default should work for anyone: Accents will be hidden unless the
user has the french language installed.

The value "show every accents" is useful for versions of android that
don't have subtypes.
2021-05-09 00:09:10 +02:00
Jules Aguillon
ebfb8f3b39 Move the "Ins" key under Fn 2021-05-08 15:54:55 +02:00
Jules Aguillon
6a19c7a56d Add french quotes, en- and em-dash
Add more keys under Fn. French quotes are S-<, S->, Fn-" and Fn-S-".
2021-05-08 15:51:47 +02:00
Jules Aguillon
41dfa844f1 Move inverted punctuation to the tilde modifier 2021-05-08 02:03:23 +02:00
Jules Aguillon
8fb89c5c71 Improve the numeric keyboard 2021-05-08 02:00:47 +02:00
Jules Aguillon
3fbc35135e Add a dashed circle symbol on accents
To help recognize them.
2021-05-07 22:15:43 +02:00
Jules Aguillon
1e6e3ab22a Fix layout not updating after rotation
Reset the layout on onStartInputView.
2021-05-07 22:10:26 +02:00
Jules Aguillon
abfa1cc8de Add '¿' and '¡' 2021-05-01 23:57:40 +02:00
Jules Aguillon
5ad4450545 Better placement of accents on QWERTY
Also change internal names for accents.
2021-05-01 23:26:44 +02:00
Jules Aguillon
c6a54ed017 Fix rendering of the first label
Caused by a shared Paint not correctly resetted.
2021-05-01 23:26:34 +02:00
Jules Aguillon
f287ff2e09 Reset keyboard when finishing
This may cause key repeat continuing for a bit after the keyboard
closes.
2021-05-01 22:47:22 +02:00
Jules Aguillon
743b10165c Highlight activated keys 2021-04-29 01:33:57 +02:00
Jules Aguillon
ec5cda0ce6 Slightly reduce the size of the bottom row 2021-04-29 01:11:18 +02:00
Jules Aguillon
ec1cd9473a Improve the azerty layout
- More intuitive placement of (), [], {} and <>.
- Move accent keys into the top-left corner, on a key they may be used with.
- Some minor changes.
2021-04-29 01:06:51 +02:00
Jules Aguillon
3f0c18612f Fix modifiers
Fixes:
- Toggling off a modifier was not possible in the corners (eg. accents).
- Modifiers on the same key can't be activated at the same time.
- Characters on the same key as a modifier weren't working properly.
2021-04-29 01:06:51 +02:00
Jules Aguillon
d00576ac2d Add the "layout" option again
Some versions of android don't allow to configure several languages.
2021-04-29 01:06:51 +02:00
Jules Aguillon
c86a119448 Tweak dimensions
Increase a bit labels size and reduce empty space between keys.
2021-04-25 00:12:16 +02:00
Jules Aguillon
f7c062d0cb Scale down larger symbols 2021-04-24 23:38:29 +02:00
Jules Aguillon
9bb2642e2c Add the label size option 2021-04-24 23:22:25 +02:00
Jules Aguillon
2dbb3dc28f Allow different sizes
Improve Paint code.
2021-04-24 23:18:16 +02:00
Jules Aguillon
87b237494a Add some missing keycodes
Allows to sent ctrl and alt combinations. Notably the ] character.
2021-04-21 23:25:14 +02:00
Jules Aguillon
66b7b532c9 Disable vibration when holding keys 2021-04-20 00:35:52 +02:00
Jules Aguillon
5dec9c1215 Add a setting for precise repeat 2021-04-20 00:34:21 +02:00
Jules Aguillon
83b3212d3d Add precise repeat on some keys
Repeat speed increase as the pointer is away from the initial position.
On arrows, backspace and delete.
2021-04-20 00:10:45 +02:00
Jules Aguillon
d04e078816 Add more characters under accents
Notably subscript and superscript digits and some quote characters.
2021-04-19 23:10:00 +02:00
Jules Aguillon
2200e2f313 Move some keys under the Fn modifier and move it on the bottom row 2021-04-19 22:29:20 +02:00
Jules Aguillon
471375d50c Add function keys
Add the Fn modifier that change the digits into F1 to F10.
2021-04-18 23:58:35 +02:00
Jules Aguillon
2f8eae628f Fix crash when no current input binding
Broken recently. Restore previous code
2021-04-18 23:31:59 +02:00
Jules Aguillon
81803c406a Separate handling of modifiers from KeyValue class
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-18 23:28:49 +02:00
Jules Aguillon
67d3a99a92 Cleanup key definitions
Remove repeated code and remove side-effects from the constructor.
2021-04-18 21:58:13 +02:00
Jules Aguillon
5ed937a654 Render the emoji key as ":)"
In order to remove the colors in the rendering.
2021-04-18 00:56:20 +02:00
Jules Aguillon
f8bce500ff Hide the input switching key if it's not needed
Android has a new way of switching between input methods and this key
need to be hidden in most cases.
2021-04-18 00:55:31 +02:00
Jules Aguillon
1421bccc7b Remove fixed keyboard width
Remove the constant of keys per rows. Add the 'shift' attribute to
declare eventual alignment/blanks in layouts.
2021-04-17 23:56:51 +02:00
Jules Aguillon
ca07bff133 Use subtypes to choose layout
This removes the "layout" setting. Every layouts that the user could use
will appear in the global settings.
2021-04-15 23:56:34 +02:00
Jules Aguillon
c22ca7302c Stateless KeyboardData class
It was a pain to use. It was also a pain to write this though.
2021-04-15 23:23:31 +02:00
Jules Aguillon
eac74d3f22 Add an option to toggle accent keys
These keys are not useful at all in English. A new option allows to hide
them, [false] by default.
2021-04-13 02:00:08 +02:00
Jules Aguillon
0b1befcc88 Fix layout pref under debug builds
Remove the use of [getIdentifier] because it requires the current
package name to be passed, which can't be found reliably since the
change in build system.
2021-04-13 01:58:25 +02:00
Jules Aguillon
a165a0ab2e Update the list of emojis
Take the list from https://unicode.org/Public/emoji/13.1/emoji-test.txt
Also change the list of groups, from the same source.
2021-01-17 00:20:09 +01:00
Jules Aguillon
8dc085048a Remove the preview popup
This was a half-finished feature:
- Dangerous when typing passwords
- Caused crash on some devices
- Ugly (on its own but also blinking when sliding and not fixed in size)
2021-01-05 00:18:24 +01:00
juloo
0b94395233 switchToNextInputMethod key 2016-12-11 22:45:58 +01:00
jaguillo
162f17a7a0 Move configs to Config object 2015-10-29 12:49:40 +01:00
jaguillo
ffba149934 preview_enabled settings 2015-10-28 22:54:38 +01:00
jaguillo
da72455d35 Improve preview popup 2015-10-28 20:56:28 +01:00
jaguillo
8fbe456074 A bit of style 2015-10-28 17:47:12 +01:00
jaguillo
16763a5f1b Show preview popup 2015-10-28 16:15:19 +01:00
jaguillo
804e9a7adc Fix some bugs + Try to show a preview popup 2015-10-28 00:39:20 +01:00
jaguillo
8716801261 Improve init of emoji pane 2015-10-27 15:05:50 +01:00