Skip to content
Diggory Hardy edited this page Aug 11, 2025 · 2 revisions

Pointers

Mouse

Kas should support all common mouse interactions. It also has some additions:

  • The mouse can scroll panes via click+drag (like touch scrolling) when clicking on non-interactive elements. Some interactive elements (text) support scrolling with Ctrl+click+drag.
  • The mouse can partially emulate two-finger scale & rotate gestures by (1) clicking without motion to set a "pin point", then (2) click+drag to scale and rotate about the pin point.

Touch

Kas should support common touch interactions, though this is not well tested.

Kinetic scrolling

This is available with both mouse and touch scrolling based on estimated mouse/touch velocity. Decay speed is configurable (absolute and relative components).

Click+drag on already-moving panes is has unusual behaviour: motion is accelerated based on the drag distance and direction, but still decays.

Keyboard

The UI supports navigation using the Tab key, but does not yet support navigation groups (#524).

Access keys are available using the Alt key.

Keys may be translated to a Command then sent to the active widget, allowing e.g. moving a slider with the arrow keys.

Text editing should support common keys and shortcuts. Text editing also supports Input Method Editors (#508).

Clone this wiki locally