gallery: a native-controls page (all NativeKinds as real OS widgets) - #63
Merged
Conversation
The wasm gallery shows the toolkit's drawn widgets; this adds its native mirror — one toolkit.NativeControl descriptor per NativeKind (all nineteen: button, label, entry, secure, checkbox, radio, switch, slider, pop-up, progress, spinner, stepper, search, editable combo, segmented, multi-line text view, link, date, colour), hosted by go-widgets/window's cocoa/win32/gtk back-end as real OS controls over the framebuffer, pure Go CGO=0. native.go builds the descriptor grid (tag-less, 100%-tested); native_main.go opens the window behind the 'gallerynative' build tag so the wasm build and the coverage-gated tests never pull in the windowing stack. Proven on Linux GTK4 under Xvfb — every control renders as its GTK widget. Adds go-widgets/window; CI gains a native build smoke.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the native mirror of the wasm demo: one
toolkit.NativeControlperNativeKind(all nineteen), hosted bygo-widgets/window's cocoa/win32/gtk back-end as real OS controls over the framebuffer, pure Go CGO=0.native.gobuilds the descriptor grid (tag-less, 100%-tested);native_main.goopens the window behind thegallerynativetag, so the wasm build and the coverage-gated tests never pull in the windowing stack. Proven on Linux GTK4 under Xvfb — every control renders as its GTK widget. CI gains a native build smoke.Run:
go build -tags gallerynative . && GO_WIDGETS_GTK=1 ./gallery(Linux).