| Age | Commit message (Collapse) | Author | Files | Lines |
|
The keyboard switching key is now selected by default in the Extra Keys
option and can be deselected.
|
|
Android's shouldOfferSwitchingToNextInputMethod() method might return
false when an other IME is installed, perhaps when the other IME doesn't
specify android:supportsSwitchingToNextInputMethod="true".
|
|
This is warranted by the API.
|
|
The keys are not renamed to retain compatibility.
|
|
Removes EmojiBottomRow.
|
|
|
|
Show the name of custom layouts in the list if it's provided using the
`name` attribute.
This should make managing several custom layouts easier.
|
|
Tapping shift might call `Utils.capitalize_string` on some symbols
(notably custom keys), which crashes on empty string.
This also happens on builtin layouts with `key1="\"`.
|
|
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.
|
|
Previously, this would trigger an error popup and make the activity
unresponsive.
|
|
|
|
A video is more intuitive than a written description and doesn't need
translations.
|
|
|
|
Bring a popup for choosing the voice IME when the voice key is pressed
for the first time or the list of voice IMEs installed on the device
change.
A preference stores the last selected IME and the last seen list of
IMEs.
|
|
This reverts the Tusinian layout (1af4e45) and instead introduce a new
arabic PC layout with arabic numbers.
Layouts are renamed:
- arab_pc => arab_pc_hindu
- arab_pc_tn => arab_pc
|
|
This new attribute is now used instead of 'script' for modifying the
numpad according to the selected layout's script.
If not provided, it defaults to the value of 'script'.
|
|
This wasn't intended and was caused by the "current_layout_unmodified"
optimisation.
|
|
|
|
This layout definition contains some documentation and is a better
default than no text.
|
|
Add location information to all error and improve "expected tag" errors.
|
|
Errors are obtained by running the parser, validation is throttle to
when the user stops editing for a second.
|
|
Line numbers will help reporting errors. Also, disable line breaking to
improve readability.
|
|
|
|
Remember the selected layout in portrait and landscape mode
independently.
This allows to define a layout specific to landscape without having to
switch manually.
|
|
|
|
|
|
This entirely changes the implementation of the bottom row in the emoji
pane.
|
|
|
|
Other currencies are moved on the Fn layer for consistency with the
compose key.
|
|
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.
|
|
`method.xml` is now able to specify a preferred position for each extra
keys in term of an other key to which it should be placed nearby.
It's implemented for French as an example.
|
|
The new PreferredPos class represents where an extra key should be
placed
Currently used to place keys at the same positions they were placed
before.
|
|
`KeyboardData.getKeys()` now returns a map of the keys present on the
layout to their position. Positions are the row, column and swipe
direction.
The computed map is cached in the KeyboardData object as it might be
accessed later by `findKeyWithValue`, which now do less work.
|
|
This is more useful than turning the entire string full caps.
|
|
The initial capitalisation state given by the editor
(`info.initialCapsMode`) is always 0 in many editors.
For some text input types, update the state when typing starts,
disregarding the value given by `info.initialCapsMode`.
|
|
The numeric layout and the optional right hand side numpad are modified
to show the digits belonging to the script used in the current layout.
The numpads are still defined as it was before. The digits are changed
in `modify_numpad` if needed.
|
|
Modify the optional right hand numpad the same way as the numeric
layout.
|
|
These keys don't seem to have a purpose, which is confusing.
|
|
This makes Ctrl+move_cursor the same as before 5123ce5.
|
|
Automatic capitalisation might interferes with keyboard shortcuts.
|
|
Implement the combinations that were previously not possible and were
commented out.
Also remove `apply_dead_char` and `apply_combining` and make all
dead-keys definitions uniform.
|
|
Change the API of `KeyModifier.Map_char` to allow returning a string
instead of a single 16 bits char.
This allows to return combining diacritics.
This also gets rid of `apply_map_or_dead_char`, maps can have their own
fallback.
|
|
|
|
The slider was repeatedly sending arrow keys, which change the focused
input when the end of a text box is hit.
A new key is added that implements cursor movements using the
`InputConnection` API.
The new keys are defined as `KeyValue.Editing`, which are no longer only
context menu actions.
The behavior when a selection has started is changed. The selection is
modified instead of cleared even when shift isn't pressed or the
selection would become empty.
Fallbacks to sending arrow keys for editors that do not support the API,
like Termux.
|
|
Settings defined with `get_dip_pref` had a wrong default value on first
launch.
The "right" default value was used after the shared preferences are
populated.
|
|
The new `layouts` preference replaces three previous preferences:
layout
second_layout
custom_layout
Add a preference migration function, which first migration is to
migrate layouts into the new preference.
The migration must also be called from the SettingsActivity as it might
use a different preference store due to the boot-aware preference copy.
|
|
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.
|
|
Clicking on a custom layout opens a dialog for modifying the layout
description instead of the dialog for selecting a layout.
|
|
This class is not used since the introduction of [LayoutsPreference].
|
|
[Preference.onClick] is apparently not called on [Item]s, though it is
on [AddButton].
Workaround this by listening on click events on the view.
|