Commit Graph

518 Commits

Author SHA1 Message Date
93e84ba7e9 Add the German language
Add the 'ß' character on the bottom-left corner of the 's' key, which is
hidden for other languages.

Co-authored-by: Moini <moini@noreply.invalid>
2022-01-09 12:49:28 +01:00
23e59c6b09 Allow to hide more keys than just accents
Add the "FLAGS_LANGS" set of flags, which will be used to hide
individual keys that are not accents.
2022-01-09 12:47:47 +01:00
2764e96eb1 Change the key combination for °
To Fn+*

Was previously accent^+*, which was not available for most languages.
2022-01-01 19:00:27 +01:00
9c82c9cfdc Improve the "precision" option
Now named "swiping distance". Changed to a dropdown.
2021-12-30 22:22:25 +01:00
8bef0728ae Turn the "precision" option to dp instead of px 2021-12-30 21:59:48 +01:00
f69a0605a8 Add the Black theme
Friendly to Amoled screens.
The background of keys is the same as the background of the whole
keyboard: pure black.
Colors are also slightly stronger.
2021-12-30 00:53:48 +01:00
29367f127d Move the border radius from Config to Theme
Also, draw activated keys with a round border too.
2021-12-30 00:52:50 +01:00
093a00c572 Add themes
Add a "Theme" option to choose between a dark and light theme.
The light theme uses the colors of the dark theme with the luminance
inversed.

The reloading after a configuration change is changed slightly:
- Special handling is needed when the Theme is changed (recreate the views)
- The default implementation of 'onConfigurationChanged' is used
  Which triggers more refresh (but don't recreate the views)
- 'onCreateInputView' is no longer needed
2021-12-30 00:26:05 +01:00
40b1ec63a9 Use the themes abstraction
Themes replace 'colors.xml' and soon will replace 'dimens.xml'.
2021-12-28 19:12:50 +01:00
93704cca0a Reference the "special key font" in the Theme object
Remove the last cast of the context.
2021-12-28 17:53:58 +01:00
15ce200ce3 Separate "handler" code
As with the previous commit, remove casts of the context.
The "handler" object is referenced in the "config" object for now.
2021-12-28 17:47:18 +01:00
0190cfc29a Turn Config into a singleton object
The goal is to remove a cast of the 'context' into 'Keyboard2'.
2021-12-28 16:47:19 +01:00
dd24ad323b Move Theme code to its own class 2021-12-26 23:55:18 +01:00
86655d4959 Always send the keycode for the tab key
Don't write the tab character and always send the keycode, which is most
probably handled by applications.
2021-12-22 20:40:39 +01:00
3e332dbf54 Use the right keycode for the home key
The previous keycode wasn't the classical "home" movement key but
Android's actual home key, which has no effect when generated from the
keyboard.
2021-12-22 20:19:59 +01:00
d721cc86d1 Avoid crash when removing a layout
Might happen when downgrading the app.
2021-12-19 20:04:17 +01:00
1cfecbdf48 Auto-format Java and XML files
Use xmllint.
Re-indent Java files using spaces.
2021-12-19 19:44:27 +01:00
573c13fb82 Add Swedish
First add the 'ring' accent.
The swedish language uses the qwerty layout and three accents (aigu,
trema, ring)
2021-12-11 17:05:49 +01:00
58e37b484c Fix Android's builtin shortcut not working
The 'repeat' field of generated key events was incorrectly set to '1'.
2021-12-11 01:03:36 +01:00
0727ea38e9 Fix swapped page_up/page_down 2021-12-05 20:55:52 +01:00
5e5c7ef86a Add the euro and pound symbols
Fn+$ and Fn+# respectively.
2021-12-05 20:16:01 +01:00
d8d3cf85e5 Avoid using getWidth() from onMeasure() 2021-12-05 19:38:46 +01:00
092b8e1c15 Fix recently introduced crash 2021-05-09 12:14:56 +02:00
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
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
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
ebfb8f3b39 Move the "Ins" key under Fn 2021-05-08 15:54:55 +02:00
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
41dfa844f1 Move inverted punctuation to the tilde modifier 2021-05-08 02:03:23 +02:00
8fb89c5c71 Improve the numeric keyboard 2021-05-08 02:00:47 +02:00
3fbc35135e Add a dashed circle symbol on accents
To help recognize them.
2021-05-07 22:15:43 +02:00
1e6e3ab22a Fix layout not updating after rotation
Reset the layout on onStartInputView.
2021-05-07 22:10:26 +02:00
abfa1cc8de Add '¿' and '¡' 2021-05-01 23:57:40 +02:00
5ad4450545 Better placement of accents on QWERTY
Also change internal names for accents.
2021-05-01 23:26:44 +02:00
c6a54ed017 Fix rendering of the first label
Caused by a shared Paint not correctly resetted.
2021-05-01 23:26:34 +02:00
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
743b10165c Highlight activated keys 2021-04-29 01:33:57 +02:00
ec5cda0ce6 Slightly reduce the size of the bottom row 2021-04-29 01:11:18 +02:00
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
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
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
c86a119448 Tweak dimensions
Increase a bit labels size and reduce empty space between keys.
2021-04-25 00:12:16 +02:00
f7c062d0cb Scale down larger symbols 2021-04-24 23:38:29 +02:00
9bb2642e2c Add the label size option 2021-04-24 23:22:25 +02:00
2dbb3dc28f Allow different sizes
Improve Paint code.
2021-04-24 23:18:16 +02:00
5688e181fa SlideBarPreference: Reduce the number of step
To have cleaner values.
2021-04-24 23:12:06 +02:00
87b237494a Add some missing keycodes
Allows to sent ctrl and alt combinations. Notably the ] character.
2021-04-21 23:25:14 +02:00
66b7b532c9 Disable vibration when holding keys 2021-04-20 00:35:52 +02:00
5dec9c1215 Add a setting for precise repeat 2021-04-20 00:34:21 +02:00
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