| Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
Moving the cursor with setSelection has no effect on Acode, for which
the fallback must be used.
|
|
|
|
Define the key margin options relative to the baseline dimensions of
keys. This removes the doubling of the horizontal margin in landscape
mode.
|
|
This allows to use modifiers in combination with other inputs like a
mouse click, for example under termux-x11.
The key down event and notification about modifiers changing are sent
down to KeyEventHandler. A mutable state remember for which modifier
down events have been sent.
When pressing down a modifier with one finger and typing with the
other, it might appear that the modifier is released after the first
time an other key is pressed and then pressed and released for the
following keys.
This prevents unintentionally type two modified keys instead of one
when the second key is pressed while the other is not yet released.
|
|
|
|
This separates the layout definitions from the special layouts
(bottom_row, greekmath) and other unrelated files (method, settings).
This is also a more intuitive location for layouts and make the resource
directory easier to navigate.
Under the hood, layouts are copied back into
build/generated-resources/xml.
|
|
|
|
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.
|