<feed xmlns='http://www.w3.org/2005/Atom'>
<title>unexpected-keyboard/.github/workflows/make-apk.yml, branch skintones</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/'/>
<entry>
<title>CI: Run the tests (#1245)</title>
<updated>2026-04-18T19:09:55+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2026-04-18T19:09:55+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=6477c90506f1cafb84cbb2436cd5a83c167ee33f'/>
<id>6477c90506f1cafb84cbb2436cd5a83c167ee33f</id>
<content type='text'>
Run the tests before building the debug APK in CI. This checks that the
unit tests pass and that the generated files are uptodate.

Doesn't fail if the generated files are outdated. Instead, the APK is
built with them updated.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Run the tests before building the debug APK in CI. This checks that the
unit tests pass and that the generated files are uptodate.

Doesn't fail if the generated files are outdated. Instead, the APK is
built with them updated.</pre>
</div>
</content>
</entry>
<entry>
<title>CI: Disable workflow runs on push (#1202)</title>
<updated>2026-03-15T00:34:19+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2026-03-15T00:34:19+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=2966a45922adfea08c1c5d1a4e585c84279277b1'/>
<id>2966a45922adfea08c1c5d1a4e585c84279277b1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Spell checking (#1137)</title>
<updated>2026-02-01T23:20:00+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2026-02-01T23:20:00+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=77c4a27c4c37b3620defcab94ffd1b2f536c88cb'/>
<id>77c4a27c4c37b3620defcab94ffd1b2f536c88cb</id>
<content type='text'>
This adds dictionary-based spell checking to the keyboard. The keyboard looks at the word being typed and matches it against a dictionary to either complete the rest of the word or find alternative spellings.

The core of this feature is implemented in cdict, which is included as a
submodule in vendor/cidct.

Cdict is developped at https://github.com/Julow/cdict
The dictionaries are hosted at https://github.com/Julow/Unexpected-Keyboard-dictionaries/
The wordlists used to build the dictionaries are the same ones used by
HeliBoard from https://codeberg.org/Helium314/aosp-dictionaries

- Add an activity accessible from the launcher app that lists available
  dictionaries with a download button.
  The DictionaryListView view shows the list of available dictionaries and
  handles downloading and installing them.

- The Dictionaries class manages installed dictionaries. Dictionaries are
  installed as individual files into the app's private directory.

- Available dictionaries are listed in dictionaries.xml, which is generated
  when building Unexpected-Keyboard-dictionaries.
  method.xml mentions the dictionary name for each locales.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds dictionary-based spell checking to the keyboard. The keyboard looks at the word being typed and matches it against a dictionary to either complete the rest of the word or find alternative spellings.

The core of this feature is implemented in cdict, which is included as a
submodule in vendor/cidct.

Cdict is developped at https://github.com/Julow/cdict
The dictionaries are hosted at https://github.com/Julow/Unexpected-Keyboard-dictionaries/
The wordlists used to build the dictionaries are the same ones used by
HeliBoard from https://codeberg.org/Helium314/aosp-dictionaries

- Add an activity accessible from the launcher app that lists available
  dictionaries with a download button.
  The DictionaryListView view shows the list of available dictionaries and
  handles downloading and installing them.

- The Dictionaries class manages installed dictionaries. Dictionaries are
  installed as individual files into the app's private directory.

- Available dictionaries are listed in dictionaries.xml, which is generated
  when building Unexpected-Keyboard-dictionaries.
  method.xml mentions the dictionary name for each locales.
</pre>
</div>
</content>
</entry>
<entry>
<title>Upgrade Gradle (#1097)</title>
<updated>2025-09-28T22:37:26+00:00</updated>
<author>
<name>J. Fronny</name>
</author>
<published>2025-09-28T22:37:26+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=7fdf63b930e51a06011ce911cf87a03c41b8334d'/>
<id>7fdf63b930e51a06011ce911cf87a03c41b8334d</id>
<content type='text'>
* Enable configuration cache and up-to-date checking
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Enable configuration cache and up-to-date checking
</pre>
</div>
</content>
</entry>
<entry>
<title>CI: Update to node.js-20 (#546)</title>
<updated>2024-02-06T23:01:54+00:00</updated>
<author>
<name>Rapha</name>
</author>
<published>2024-02-06T23:01:54+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=79aec5b9bca2f4b4aa79f95fa5253c8c4e0f3b25'/>
<id>79aec5b9bca2f4b4aa79f95fa5253c8c4e0f3b25</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use Gradle (#452)</title>
<updated>2023-11-25T19:11:12+00:00</updated>
<author>
<name>deftkHD</name>
</author>
<published>2023-11-25T19:11:12+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=684d5c7b70536d7a36d80da659821a2e60d81841'/>
<id>684d5c7b70536d7a36d80da659821a2e60d81841</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename resulting CI artifact (#180)</title>
<updated>2022-10-15T22:53:04+00:00</updated>
<author>
<name>Rapha</name>
</author>
<published>2022-10-15T22:53:04+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=7fb5c992b6235d350cbd45962d1e51c5a044d019'/>
<id>7fb5c992b6235d350cbd45962d1e51c5a044d019</id>
<content type='text'>
* Rename resulting CI artifact
Add details to the name of the artifact, to distiguish downloads of it between multiple branches while testing

* Update CI to nodejs16 and improve artifact naming</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Rename resulting CI artifact
Add details to the name of the artifact, to distiguish downloads of it between multiple branches while testing

* Update CI to nodejs16 and improve artifact naming</pre>
</div>
</content>
</entry>
<entry>
<title>Remove build dependency on Fontforge</title>
<updated>2022-04-24T18:52:36+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2022-04-24T18:52:36+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=39952f8bdf2ee77e32152bf67df456a83e3e03fe'/>
<id>39952f8bdf2ee77e32152bf67df456a83e3e03fe</id>
<content type='text'>
The required version of fontforge (from 2020!) is not available in many
distros. This is an annoying for contributors and greatly complicated
the CI and F-Droid scripts.

The generated font file is now included in the sources. Fontforge is
still needed when adding new glyphs but this is not a common operation.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The required version of fontforge (from 2020!) is not available in many
distros. This is an annoying for contributors and greatly complicated
the CI and F-Droid scripts.

The generated font file is now included in the sources. Fontforge is
still needed when adding new glyphs but this is not a common operation.
</pre>
</div>
</content>
</entry>
<entry>
<title>Upgrade CI workflow (#111)</title>
<updated>2022-04-02T14:33:12+00:00</updated>
<author>
<name>Raphael</name>
</author>
<published>2022-04-02T14:33:12+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=723c7e9aec1fb5cb2c40514993be9131fbc229ee'/>
<id>723c7e9aec1fb5cb2c40514993be9131fbc229ee</id>
<content type='text'>
* 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 &lt;jules@j3s.fr&gt;

* add *.keystore.asc to .gitignore

* Clean up lines, adjust documentation

* use CURDIR automatic makefile variable

Co-authored-by: Jules Aguillon &lt;jules@j3s.fr&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 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 &lt;jules@j3s.fr&gt;

* add *.keystore.asc to .gitignore

* Clean up lines, adjust documentation

* use CURDIR automatic makefile variable

Co-authored-by: Jules Aguillon &lt;jules@j3s.fr&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>CI: Install fontforge with Nix</title>
<updated>2022-03-27T14:26:58+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2022-03-27T14:08:26+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=ed2dea9630df9a8470a7fbe032cd47bc3259844f'/>
<id>ed2dea9630df9a8470a7fbe032cd47bc3259844f</id>
<content type='text'>
And cache the nix store.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
And cache the nix store.
</pre>
</div>
</content>
</entry>
</feed>
