Skip to content

Add a game menu example with text boxes, settings, and quests - #9

Closed
relh wants to merge 1 commit into
mainfrom
relh/game-ui-foundation-20260909
Closed

relh wants to merge 1 commit into
mainfrom
relh/game-ui-foundation-20260909

Conversation

@relh

@relh relh commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor

Adds a runnable Silky game-menu example with character, settings, and quest panels, plus reusable safe-area layout helpers. Panels account for caller-provided edge insets and replay controls, and oversized panels are clamped to the usable area.

The gallery demonstrates text input, checkboxes, sliders, dropdowns, disabled actions, themes, and scrollable content. It now uses the upstream Silky and Windy revisions already pinned by main; no dependency forks or PR pins remain. Silky also owns text-input focus automatically, so the old manual rune callback and focus bookkeeping were removed.

Deterministic tests cover safe-area geometry and panel fitting. CI builds the atlas and compiles the example. The old coordinate-driven semantic interaction test was removed because it mostly retested upstream controls and was brittle under layout changes.

Feature requests:

@relh relh left a comment •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Codex, acting on behalf of relh]

Reviewed af283b5. No independent actionable finding in safe-area geometry or the gallery layout. This head does pin the Silky change with the completed-click regression: press-driven controls, including the gallery scrubber, ignore clicks whose press and release arrive between frames. Refresh the dependency after that fix and include a completed track click in the gallery proof. I inspected the layout tests and recorded browser/CI evidence; this review did not rerun the browser, and the additional icon fixture could not acquire shared test capacity and was canceled before running.

@relh

relh commented Sep 9, 2026 •

Copy link
Copy Markdown
Contributor Author

[Codex, acting on behalf of relh]

Addressed the dependency issue from the review in 832d7de: this PR now pins Silky 6c4ae95, which fixes completed clicks in press-driven controls and stops completed scrubber clicks from leaving a drag active.

The simplify-diff pass retained the existing layout API and widget owner. Regression coverage stays in the existing semantic and browser proofs. The UI workflow passed: upstream widget tests, the gallery's actual controls, native rendering, WebGL build, and live input including a press/release in one browser task followed by mouse movement without dragging. That closes the inherited finding here; the original review summary has no resolvable inline thread.

Captured native and browser screenshots.

@relh

relh commented Sep 9, 2026

Copy link
Copy Markdown
Contributor Author

Simplify pass against #24, #25, #26, #27, #28, #29 at 4795fad.

Removed a separate replay-bar overlap calculation from layout validation: the usable game area already excludes that bar. Added boundary checks for a panel that fills the available area, the replay bar itself, and a panel crossing into it. Kept the runnable menus and browser input fixes.

Layout tests passed locally. Linux, macOS and Windows CI and the native and live browser gallery proof passed. The gallery proof exercises actual typing, quick clicks, sliders, dropdowns, disabled/repeated rewards, resizing, and scrolling.

@relh relh changed the title Add safe-area UI placement and a playable Silky gallery Add a working game menu example and keep panels on screen Sep 9, 2026
@relh relh changed the title Add a working game menu example and keep panels on screen Add usable game menus and keep panels clear of reserved space Sep 9, 2026
@relh relh changed the title Add usable game menus and keep panels clear of reserved space Add a game menu example and keep panels inside reserved bounds Sep 9, 2026
@relh relh changed the title Add a game menu example and keep panels inside reserved bounds Add a game menu example with text boxes, settings, and quests Sep 9, 2026
@treeform

treeform commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

The input fixes have now merged upstream:

  • Windy #196, commit c9e19887b0ff143f382f5e99a0720ee01f9a9f51: browser text delivery and keyboard/modifier callbacks.
  • Silky #69, commit fb9b13910edd66cf1751056784c2f7d2932a59fc: automatic focused text input and ordered shortcut processing, with the breaking version bump to 0.2.0.

This PR still pins the older forks. Issue #26 now tracks the remaining adoption work: update pins, remove manual inputRunes forwarding and rune-input enablement, use Silky's button accessors for controls that should pause while typing, and rebuild/check the actual gallery.

The separate upstream bug trackers #28 and #32 are being closed as fixed upstream. Their downstream integration remains open here and in #26. Preserve the widget work in Silky #67 and the non-Mac wheel-direction fix in Windy #194; neither is included in the newly merged keyboard PRs. Native IME and clipboard behavior remain unverified.

@relh
relh force-pushed the relh/game-ui-foundation-20260909 branch from af23647 to d80cddb Compare September 11, 2026 23:50
@relh

relh commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor Author

Closing as deferred. The upstream Windy/Silky input fixes are already pinned on main, the four games provide stronger UI examples, and the gallery's independently fitted panels can overlap at small resized windows. Issue #26 remains open for a focused gallery or safe-area change when there is a concrete caller.

@relh relh closed this Sep 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants