<feed xmlns='http://www.w3.org/2005/Atom'>
<title>unexpected-keyboard/.github/workflows, branch main</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: Check whether ComposeKeyData is uptodate (#1204)</title>
<updated>2026-03-15T23:00:41+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2026-03-15T23:00:41+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=4dab3a609cba9d19ba7aef880d4f95860b5643a1'/>
<id>4dab3a609cba9d19ba7aef880d4f95860b5643a1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</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: Disable translation check</title>
<updated>2025-07-02T21:15:33+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2025-07-02T21:15:33+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=d1dfc80df6c1738763e3a8a72cd62df17f6adedf'/>
<id>d1dfc80df6c1738763e3a8a72cd62df17f6adedf</id>
<content type='text'>
The translation check is creating conflicts with changes done on Weblate
and is superfluous.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The translation check is creating conflicts with changes done on Weblate
and is superfluous.
</pre>
</div>
</content>
</entry>
<entry>
<title>Improve the check_layout CI and output</title>
<updated>2025-02-04T16:17:46+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2025-02-04T16:17:46+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=aaf0a9a24999769a0bba9ec45968368ff0019012'/>
<id>aaf0a9a24999769a0bba9ec45968368ff0019012</id>
<content type='text'>
Change the format of check_layout.output to avoid adding any logs for
layouts that do not trigger any warning.

Fix the check_layout CI, which was broken since check_layout.py was
changed to take arguments.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change the format of check_layout.output to avoid adding any logs for
layouts that do not trigger any warning.

Fix the check_layout CI, which was broken since check_layout.py was
changed to take arguments.
</pre>
</div>
</content>
</entry>
<entry>
<title>CI: Improve layout and store description checks (#565)</title>
<updated>2024-02-18T16:55:41+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2024-02-18T16:55:41+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=dac702ad0b1332cc549aeb0c620f72cb4c4a4a1b'/>
<id>dac702ad0b1332cc549aeb0c620f72cb4c4a4a1b</id>
<content type='text'>
* CI: Run 'check_layout.py'

Ensures that 'check_layout.output' is not outdated.
Also, update it.

* CI: Check new store descriptions

When a store description is added, 'python3 sync_translations.py' leaves
an untracked file that is not checked.

This makes sure that untracked store descriptions are noticed in CI.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* CI: Run 'check_layout.py'

Ensures that 'check_layout.output' is not outdated.
Also, update it.

* CI: Check new store descriptions

When a store description is added, 'python3 sync_translations.py' leaves
an untracked file that is not checked.

This makes sure that untracked store descriptions are noticed in CI.</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>
</feed>
