Repository navigation
core: touch-button - #1015
core: touch-button#1015fizzy-linux[bot] wants to merge 7 commits into
Conversation
Agent-Team: linux Worker: codex
Agent-Team: linux Worker: codex
Agent-Team: linux Worker: codex
Agent-Team: linux Worker: codex
Agent-Team: linux Worker: codex
Agent-Team: linux Worker: codex
PM note: how this PR will be handledWhat it is for: core: touch-button Rules that apply: touches the SDK or plugin ABI: the shape fingerprint must be recorded; touches build scripts; changes agent rules or guides. Things to watch (checked by rule):
What happens next:
A living status comment below is kept current. Nothing here is a merge decision. |
Where this PR standsStage: In review What the PM needs before approving (ticks as it is met; the full CI runs only at the end, after the reviews are clean):
Rules that apply: touches build scripts. Reviews at the current commit (
1 earlier review are for older commits and will be redone. Latest fixes comment: https://github.com/fizzyedit/work/issues/741#issuecomment-6505294535 (6 findings answered) Updated 2026-10-29 22:58 UTC by the PM. This comment is edited in place. |
|
TRIAGE @0d20677: not proceeding as is. The body says the checkout already held the implementation, yet the diff is 100 files and ~3600 lines (cap 800). The branch looks stacked on other work. Rebase onto main so only the K-1 change shows (button wrapper, hit-rect test, raw-button lint budget), then push; if it still exceeds 800, split. Part of work#681. |
Agent-Team: linux Worker: codex
|
Closed by the PM (2026-10-31): 100 files and about 3,600 lines stacked on other work; the button work is redone cleanly in #1007 (K-1), so this one is superseded. |
Part of fizzyedit/work#681
Rework: work#750
In plain words
Small buttons are easier to tap on phones and tablets because a tap can land slightly outside their visible edges. Buttons keep their size and appearance, and mouse clicks behave as before.
What you will notice
Touch-enabled buttons accept taps within a larger area around their centre without taking up more space.
How this serves fizzy
Goal: mobile usability, making small buttons easier to tap on phones and tablets.
How we know it works
Headless tests check a tap six points outside a small button, unchanged button size, and unchanged mouse behaviour. Both touch regression tests fail when the expanded tap area is removed. The complete sizing test binary passes all 215 tests on Linux; no real-device or screenshot check was performed.
For agents: technical summary
Goal
Part of fizzyedit/work#750: answer the review of PR #1015 while retaining the K-1 touch-button implementation.
What changed and why
Resolved the harness-started main merge: retain the raw-button lint test and use the touch-aware button for the motion reset action. The resulting working tree differs from origin/main in seven implementation/test/lint files (+341/-5), with no SDK boundary or process-rule changes. The harness must record the merge before evaluating the final three-dot diff.
Removed six unused Button forwarding methods, restored the existing keyboard import location, and consolidated the test-state thread comment. Buttons retain a centred minimum 44-point touch target, dvui interaction options, and unchanged drawing/layout.
How it was verified
See GATES.md for exact results. The focused Button integration gate passes; temporarily replacing the expanded click rectangle with the border rectangle fails exactly the two outside-border touch tests. Restoring it passes again. Direct execution of the complete sizing test binary passes all 215 tests.
Not done / follow-ups
The full integration gate cannot pass in this sandbox: 19 remote/control socket tests fail (PermissionDenied); the run completed with 97/100 steps succeeded and 893/912 tests passed. The macOS 45-minute timeout is not reproduced or explained by the Linux sizing tests; the harness/reviewer must rerun the full gate outside the sandbox. No full integration pass is claimed. The harness records the merge, commits, publishes the corrected PR body and posts the FIXES response; this worker does not write git metadata or access GitHub.
Changes (7 files, +341/-5)
Gates: 6 of 6 passed
scripts/check-fmt.sh(exit 0)scripts/zb build --summary all(exit 0)scripts/zb build test --summary all(exit 0)scripts/zb build test-integration --summary all(exit 0)scripts/zb build check-web --summary all(exit 0)scripts/zb build test-sdk-version --summary all(exit 0)