<feed xmlns='http://www.w3.org/2005/Atom'>
<title>unexpected-keyboard/res/xml/bottom_row.xml, 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>Remove the 'slider="true"' attribute</title>
<updated>2025-01-11T15:30:36+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2025-01-11T15:30:36+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=ddd2eebb0e2a811c922d9c30c7ce17980caeb2a5'/>
<id>ddd2eebb0e2a811c922d9c30c7ce17980caeb2a5</id>
<content type='text'>
Whether a key behaves as a slider is now purely defined by the key
values present on it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Whether a key behaves as a slider is now purely defined by the key
values present on it.
</pre>
</div>
</content>
</entry>
<entry>
<title>Clipboard pane (#681)</title>
<updated>2024-07-06T20:16:37+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2024-07-06T20:16:37+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=bf3b9c374e1e68b1244da392666b571ab37e51fb'/>
<id>bf3b9c374e1e68b1244da392666b571ab37e51fb</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow to remove the compose key in the settings</title>
<updated>2024-02-17T22:28:31+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2024-02-17T18:46:09+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=e40558677ef40184c28fbfe721a4be69a4955fa6'/>
<id>e40558677ef40184c28fbfe721a4be69a4955fa6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Compose key</title>
<updated>2024-02-17T22:28:31+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2024-02-11T19:46:36+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=8c290732607692cd94247f7e3e9c80fad1dfe516'/>
<id>8c290732607692cd94247f7e3e9c80fad1dfe516</id>
<content type='text'>
The COMPOSE_PENDING modifier indicate whether a compose sequence is in
progress. The new key of kind Compose_pending sets the current state of
the sequence.

The compose sequences are compiled into a state machine by a python
script into a compact encoding.

The state of the pending compose is determined by the index of a state.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The COMPOSE_PENDING modifier indicate whether a compose sequence is in
progress. The new key of kind Compose_pending sets the current state of
the sequence.

The compose sequences are compiled into a state machine by a python
script into a compact encoding.

The state of the pending compose is determined by the index of a state.
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow hidding the keyboard switching key</title>
<updated>2024-01-15T22:26:40+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2024-01-15T22:26:40+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=95bd9312a7714e1fbee2a792a12d2b9ced36b708'/>
<id>95bd9312a7714e1fbee2a792a12d2b9ced36b708</id>
<content type='text'>
The keyboard switching key is now selected by default in the Extra Keys
option and can be deselected.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The keyboard switching key is now selected by default in the Extra Keys
option and can be deselected.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add page_up, page_down, home, end to extra keys</title>
<updated>2023-10-20T10:20:25+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2023-10-20T10:15:50+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=33653a94cb7138007a3b1da69a6c3eef1d5ad285'/>
<id>33653a94cb7138007a3b1da69a6c3eef1d5ad285</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix slider movements changing input focus</title>
<updated>2023-08-17T10:47:44+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2023-08-17T10:47:44+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=5123ce5417716bedac970ba34432cf7d43d64d62'/>
<id>5123ce5417716bedac970ba34432cf7d43d64d62</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Move voice input key (#433)</title>
<updated>2023-08-16T10:27:00+00:00</updated>
<author>
<name>Validbit</name>
</author>
<published>2023-08-16T10:27:00+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=405e63d5c2c29fafa601a932c65391e92effae1d'/>
<id>405e63d5c2c29fafa601a932c65391e92effae1d</id>
<content type='text'>
Move the voice input key to the top-left corner of the return key to reduce accidentally entering voice input, which is disrupting.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Move the voice input key to the top-left corner of the return key to reduce accidentally entering voice input, which is disrupting.</pre>
</div>
</content>
</entry>
<entry>
<title>Allow more than 2 layouts</title>
<updated>2023-07-30T19:44:14+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2023-07-29T16:37:06+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=dad5f57a036e3f0ad7278ccee5bd248192cbbad2'/>
<id>dad5f57a036e3f0ad7278ccee5bd248192cbbad2</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add Voice Typing key</title>
<updated>2023-06-03T16:11:42+00:00</updated>
<author>
<name>Jules Aguillon</name>
</author>
<published>2023-06-03T16:11:42+00:00</published>
<link rel='alternate' type='text/html' href='https://ps.run/git/unexpected-keyboard/commit/?id=85cdb9b2b5e4a43ace04e97dbfa7350aa84efedc'/>
<id>85cdb9b2b5e4a43ace04e97dbfa7350aa84efedc</id>
<content type='text'>
The new key switches to any installed "voice" input method.
If several input methods matches, no effort is made to choose.
Might misbehave with some input methods other than Google's on API &lt; 28.

It is placed on the middle of the arrows on the bottom bar. It is
enabled by default and can be removed in the "Extra keys" option.

The key is not removed from the keyboard if no voice input method
exists.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The new key switches to any installed "voice" input method.
If several input methods matches, no effort is made to choose.
Might misbehave with some input methods other than Google's on API &lt; 28.

It is placed on the middle of the arrows on the bottom bar. It is
enabled by default and can be removed in the "Extra keys" option.

The key is not removed from the keyboard if no voice input method
exists.
</pre>
</div>
</content>
</entry>
</feed>
