| Age | Commit message (Collapse) | Author | Files | Lines |
|
* Refactor: Implement the space key as an editing action
The space key is no longer a CHAR key but now an EDITING key. This
allows changing the behavior of the space bar while allowing custom
layout users to define a key outputing a space as before.
KeyModifier and ComposeKey are updated to treat the space key as before.
* Enter the best suggestion when the space bar is pressed
* Refactor: Implement backspace as an editing action
* Undo suggestion when delete is pressed
The delete key (backspace internally) undoes the suggestion if the last
action done was entering the suggestion with either the space bar or the
candidates view.
* Add an option to enable space bar autocomplete
This option is off by default. Undoing a completion with backspace works
in any case.
* Refactor: Track selection emptyness in CurrentlyTypedWord
This removes an expensive RPC call.
|
|
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.
|
|
* Refactor: Create subpackage 'suggestions'
* Candidates view: Status message when no dictionary installed
Show a message on the candidates view instead of leaving it empty. A
button points to the dictionary installation activity.
* Add an option to disable the suggestions
* Refactor: Remove Config.should_show_candidates_view
This was moved to EditorConfig.
* Don't disable text suggestions in some text boxes
* Suggestion text size matching settings
The candidates view height is based on the height of keyboard rows and
the suggestion text size is based on the size of labels on the keys.
This is influenced by symbol size and keyboard height options.
|
|
The "Switch to the last used keyboard" is renamed to "Switching between
input methods" and allows to select "Switch to last used", which was the
default in older releases.
|
|
|
|
|
|
|
|
|
|
* Add option 'Space bar slider sensitivity'
* Fix slider moving the cursor twice at the beginning
The slider was generating two events when first activated.
Since 2bed42857.
* Make slider less sensitive for the first step
This moves the second slider step approximately 40% further and takes the
new sensitivity option into account.
Allows moving the cursor by one spot more easily.
|
|
|
|
|
|
* Add AndroidX WindowManager
unfortunately, this seems to be the only way to get fold state, native Android APIs are internal. To add this, we need to update some dependencies, raise java version and raise compile SDK.
* adds separate layouts and separate layout settings for folded and unfolded state of the device.
The affected settings are:
+ the margin bottom settings
+ the horizontal margin settings
+ the keyboard height settings
* Update shell.nix
|
|
|
|
|
|
|
|
The number row option is changed into a ListPreference and controls whether the number row contains symbols or not.
Co-authored-by: Joey Schaff <j@jaoh.xyz>
|
|
|
|
This runs sync_translations.py, which also remove uneeded comments.
|
|
The gesture combination is mentioned. Preferred position are added.
|
|
This avoids creating an empty dialog that appears as a mysterious white
rectangle.
|
|
|
|
|
|
|
|
Co-authored-by: Anastazius Kaejatidarjan <zdarian@asu.edu>
|
|
|
|
This adds the clipboard pane, which allows to save an arbitrary number of
clipboards and to paste them later. The key can be disabled in settings.
Checking the "Recently copied text" checkbox will cause the keyboard to keep a
temporary history of copied text. This history can only contain 3 elements
which expire after 5 minutes.
If this is unchecked, no history is collected.
History entries can be pinned into the persisted list of pins.
|
|
Internally "key repeat" is reword into "long press" when the same
mechanism was used for both features.
The constraint that 'timeoutWhat' must be set to '-1' when no message is
expected has been lifted to simplify the code.
|
|
The long press timeout is used for long press on keys that do not
repeat, for example the keyboard switching key.
This must be detached from the key repeat as it might be disableable in
the future and more keys might be longpressable.
|
|
|
|
|
|
|
|
Among others:
- Use `apply` instead of `commit` when saving shared preferences.
- Avoid inlined Api
- Remove unused resources
|
|
|
|
This makes translation easier as there's a single file to edit at.
Existing short and full descriptions are conserved.
sync_translations.py takes care of updating the metadata files.
The metadata directories are renamed to match the language codes used in `res/`.
Contributing guidelines are updated accordingly.
|
|
The keyboard switching key is now selected by default in the Extra Keys
option and can be deselected.
|
|
This reverts commits ef03dfed5c802a855c4655204eee39a8769cfed7 and
ff01678ba688778d67f824a0be56634974c1b0e8.
The "vibration duration" slider is bought back.
The "vibration enabled" option is replaced by "custom vibration", which switch between the system haptic feedback or the custom vibration.
The slider is greyed when "custom vibration" is unchecked and is
allowed to have a value of 0 to disable vibrations within the app.
The intermediate values "light", "medium" and "strong" are removed and
no migration of the setting is made.
|
|
|
|
|
|
|
|
The new keys are placed on the corner of the arrow keys. Key
descriptions are added.
They are removed from the Fn layer to avoid showing up twice.
|
|
These keys don't seem to have a purpose, which is confusing.
|
|
Remove the cross button on the right of custom layouts to reduce
accidental removal.
A remove button is added in the dialog for modifying the layout.
|
|
This merges the "Layouts" option with the "Custom layout" option.
A custom layout becomes an item in the "Layouts" list among the other
layouts. It's possible to add several custom layouts.
Selecting the "Custom layout" item in the list opens a second dialog for
entering the layout description.
Layouts are serialized as JSON object and are decoded solely in the
LayoutsPreference class.
|
|
And add description strings.
|
|
The new strings are used in the "Add keys to the keyboard" option.
|
|
This option makes less sense since per-script extra keys. It's also
getting in the way of an eventual "dead-key or accented-letters" option.
|
|
Key descriptions are shown in the "extra keys" option and can now be
translated.
|
|
The link to Github was not clickable and couldn't easily be made so in
its current form.
Render the link in its own paragraph and do not hide the URL.
|
|
The two layout selection options are replaced by a ListGroupPreference
that allow to enter an arbitrary amount of layouts.
The "switch_second" and "switch_second_back" keys are replaced by
"switch_forward" and "switch_backward", which allow to cycle through the
selected layouts in two directions.
Layouts are changed to place these two key on the space bar.
The backward key is not shown if there's only two layouts.
|
|
The pin entry layout might be inferior for some usecases and people
might be more used to the numeric layout.
|