Add named keyboard binding modes (#32)
Add named keyboard shortcut maps with an Escape exit and a panel indicator. Keep press/release ownership across transitions, validate remapped Escape keys, and cancel stale repeats and focus previews. Give the indicator ownership of the panel while a mode is active. Close popovers, collapse Morph, and keep Live Activities data current without resizing the hidden panel. Document configuration and transition behavior. Validation: 1,519 workspace Rust tests passed; 70 Python tests passed. Workspace build, formatting, Clippy, and Settings configuration validation passed. Opt-in native desktop checks were not rerun because Weston is absent. Related: #5.
This commit is contained in:
1 parent
6b0d903ad0
commit
7d58eeb65d
28 files changed
+1258
-35
No files matched your search
@@ -22,7 +22,7 @@
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
</copyright>
|
||||
|
||||
<interface name="ferese_shell_manager_v1" version="8">
|
||||
<interface name="ferese_shell_manager_v1" version="9">
|
||||
<description summary="create a capability-scoped Ferese shell controller">
|
||||
This private global is visible only to clients granted the shell-control
|
||||
capability. It does not assign a Wayland surface role.
|
||||
@@ -35,7 +35,7 @@
|
||||
<request name="destroy" type="destructor"/>
|
||||
</interface>
|
||||
|
||||
<interface name="ferese_shell_v1" version="8">
|
||||
<interface name="ferese_shell_v1" version="9">
|
||||
<description summary="managed-window metadata and shell control">
|
||||
Window, workspace, and output identifiers are unsigned 64-bit values
|
||||
encoded as high and low 32-bit words. Each snapshot atomically replaces
|
||||
@@ -205,5 +205,13 @@
|
||||
<arg name="workspace_hi" type="uint"/>
|
||||
<arg name="workspace_lo" type="uint"/>
|
||||
</request>
|
||||
<event name="binding_mode" since="9">
|
||||
<description summary="active keyboard binding mode inside a snapshot">
|
||||
Sent between snapshot_begin and snapshot_end. An empty name denotes
|
||||
the default bindings. Other names must be displayed with an Escape exit
|
||||
hint until the next snapshot replaces them.
|
||||
</description>
|
||||
<arg name="name" type="string"/>
|
||||
</event>
|
||||
</interface>
|
||||
</protocol>
|
||||
Reference in new issue
Block a user