This reverts commit b85b67c2f0.
The Ctrl key was too hard to use in the new position, especially in
combination with arrows or backspace.
Leave the switching key in the numeric layout however, where the Ctrl
key is not very useful. Put Ctrl on the top-right because bottom-right
is where the switching key is in the other layouts.
Allow specifying a layout for programming and add a key for switching to
it easily.
The switching key is placed on the top edge of the space bar.
The option has no effect by default because the ergonomic isn't ideal,
it needs to be enabled explicitly.
Users of Latin-script languages certainly prefer to use one layout (for
programming or not). This feature might be removed in favor of a better
language-switching mechanisms in the future.
These keys are harder to hit as the finger might exit the screen before
traveling enough to hit a corner. It might be particularly harder for
people that use a phone case.
Every layouts are changed, the notable changes are:
- The Escape key is in the bottom-right corner of the first key.
This position looks weird at first but is a lot easier to type.
- The 0 key is on the top-left of the last key on the first row.
It is not like the other digits.
- The Tab key is on the top-right. This might be hard to re-learn.
- Some layouts had more changes to accomodate these new positions.
Co-authored-by: Raphael <rapha.a.r@gmail.com>
Revert to previous version, the original google material icon,
which is not rounded, and it looks better with the rest of the keyboard,
also more correct to represent the open box unicode space char,
instead of a smile
* Cache dependencies on CI workflow
* Use available fontforge version for CI action
Avoid a dirty OS upgrade to get a newer version of FontForge,
use what is available at Ubuntu 20.04
* Upgrade CI Workflow
By using an appimage of FontForge, it's easier to install the latest version, to cache it, and there is no extra dependencies clashes with Ubuntu 20.04
* Make paths for fontforge absolute in makefile
It's necessary because fontforge is an AppImage and requires it
* Improve cache step on CI
wget don't download a duplicate if file already exists
* Generate base64 ascii encoded debug keystore
That can be used to transfer the keystore to a Github Secret
* Restore debug.keystore from github secrets
Get the asc encoded keystore from github secrets,
and decode it back to a bynary file inside the CI run.
* Cleanup redundant lines and add explanation comment
* runs-on ubuntu-latest
Co-authored-by: Jules Aguillon <jules@j3s.fr>
* add *.keystore.asc to .gitignore
* Clean up lines, adjust documentation
* use CURDIR automatic makefile variable
Co-authored-by: Jules Aguillon <jules@j3s.fr>
The previous computation was very different depending on the device's
screen and accessibility options.
Given that the keyboard is supposed to fill all the space in one
dimension, the dpi unit makes little sense.
The formula doesn't mean anything in particular, it takes into account
both dimensions (x and y) and should be close to the dpi in the
diagonals (which is the direction of swipe).
This changes the actual value, on a 1920x1080 480dpi screen, the value
is increased by 20%.
Added the middle dot (·) to the Spanish keyboard, in order to be able to type
Catalan words and names. Catalan is spoken in Eastern Spain, and the middle top
is therefore included in standard PC Spanish keyboards.
Also changed the Tab key to an upwards-leftwards swipe, as to follow more closely
the programmer's layout qwerty.xml
The accents are taken from the Roboto Regular font (Apache 2.0), added
the dotted circle and exported with FontForge.
The argument to FontForge's Import function are changed, the fifth
argument controls the accuracy and needed to be lowered otherwise the
grave accent wouldn't be rendered at all.
The build takes place on the remote, which takes advantage of Nix's
caching.
The previous workflow used a remote cache but in order to build locally,
all the dependencies needed to be downloaded from the cache everytime.
The dependencies are 462M, downloading took most of the time.
This is only to make this layout more similar to the default English layout.
Macrons are not actually used in any language spoken in Spain, but they
appear to be used in some varieties of Nahuatl?
Also added C-cedilla to the N-tilde key. Even if both C-cedilla and N-tilde
are redundant in this keyboard, both letters are a staple of Spain keyboards,
and Spaniards are used to have a dedicated key for C-cedilla in PC keyboards.
When changing any numeric setting and cancelling this change, the change would not
be persisted, but the summary in the setting screen would show the last position
of the slider instead of the correct unchanged value.
This commit fixes this on the most simple way by resetting the slider position to
the persisted value.
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.
Keep the glyphs in SVG format and build the font using a FontForge
script.
A part of the previous font is kept because the sources is lost.
This adds a new dependency to the build system, fontforge.
On some devices, bogus touch events can be sent while holding a key.
With modulated keys, it can happens on top of other keys.
Ignore every new pointers when a modulated key is pressed.
* Providing a comprehensible Brazilian Portuguese keyboard layout
removed cedille as it is already provided by an independent key;
changed layout to correspond to the locale
Handling this event is part of the API but was never done. This caused
unstoppable key-repeat.
This event isn't common, the only way I found on Android 10 is to switch
to the emoji keyboard while holding a key. Some apps might cause this
event more often.
Using the --product option of aapt.
Remove the app name from translations because it is never translated. It
is still possible to translate it by specifying 'product="default"'.