A simple, high performance text editor.
Go to file
Greg Pomerantz e4c5804170 Add touch and input handling specification (doc/touch.md)
- Gioui primitives: pointer.InputOp, key.InputOp, key.FocusOp, SoftKeyboardOp
- Op/Event flow: Logic computes elements, Renderer submits ops, Main batches events
- Coordinate mapping: UI space → text space → byte space, with hit-region tags
- Gesture state machine: tap, double-tap, long-press, drag-select, scroll
- Gesture disambiguation: timing thresholds (500ms long-press, 300ms double-tap, 16DP drag)
- Selection logic: selection_start/selection_end byte offsets
- Input batching: Main accumulates events, sends batch to Logic per frame
- Keyboard interaction: focus acquisition/loss, key event table, IME composition
- Scroll momentum: fling logic with exponential decay, scroll clamping

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-05-08 12:01:06 -04:00
cmd/pad Add Gioui scaffolding with Label and ListView rendering 2026-05-07 17:45:56 -04:00
doc Add touch and input handling specification (doc/touch.md) 2026-05-08 12:01:06 -04:00
internal/ui Add Gioui scaffolding with Label and ListView rendering 2026-05-07 17:45:56 -04:00
go.mod Add Gioui scaffolding with Label and ListView rendering 2026-05-07 17:45:56 -04:00
go.sum Add Gioui scaffolding with Label and ListView rendering 2026-05-07 17:45:56 -04:00