Documentation
¶
Overview ¶
Demo debug helpers for the grudemo launcher (F5–F11 / env toggles).
Consolidated at repo root so public export stays a short allowlist — not a scatter of debug_*.go files. Keys:
F5 caret / idle blockers F6 benchmark (main) F7 resize FPS + idle guard F8 resize propagation F10 draw-dirty trace F11 perf overlay (main) Shift+F11 WebView flash
Env: GRU_DEBUG, GRU_IDLE_GUARD, GRU_WEBVIEW_DEBUG (GORY_* aliases).
Package main is the Gru demo launcher.
Press Tab (or the on-screen button) to cycle through the available demo scenes. Each scene is built by a function in the examples/ package.
Platform helpers for desktop vs Android (raylib NativeActivity).
This file is compiled on every GOOS; branches use isAndroidApp() so desktop keeps MSAA, custom chrome, and default window size. Android-only entry is main_android_init.go (build tag). See docs/ANDROID_CODE.md.
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
gru
command
gru is the Gru packaging CLI — build, test helpers, and package desktop apps.
|
gru is the Gru packaging CLI — build, test helpers, and package desktop apps. |
|
hello
command
hello is the public Gru sample — GRU core spine then a tiny scene (docs/GRU_CORE.md).
|
hello is the public Gru sample — GRU core spine then a tiny scene (docs/GRU_CORE.md). |
|
webviewhello
command
webviewhello — Gru WebView shell starter (window + title bar + HTML body).
|
webviewhello — Gru WebView shell starter (window + title bar + HTML body). |
|
devtools
|
|
|
studio
Package studio implements Gru Studio chrome — the internal demo launcher side panel.
|
Package studio implements Gru Studio chrome — the internal demo launcher side panel. |
|
Package examples (continued)
|
Package examples (continued) |
|
appinstance
Package appinstance forwards startup files to an already-running Gru Notepad.
|
Package appinstance forwards startup files to an already-running Gru Notepad. |
|
startuppath
Package startuppath resolves optional file paths from argv and environment.
|
Package startuppath resolves optional file paths from argv and environment. |
|
internal
|
|
|
appicon
Package appicon applies OS-facing GRU icons using raylib (SetWindowIcons) and embedded PNGs/ICOs.
|
Package appicon applies OS-facing GRU icons using raylib (SetWindowIcons) and embedded PNGs/ICOs. |
|
tray
Package tray hosts a desktop notification-area icon (separate goroutine; safe with raylib/GLFW).
|
Package tray hosts a desktop notification-area icon (separate goroutine; safe with raylib/GLFW). |
|
version
Package version holds release strings injected by cmd/gru at link time.
|
Package version holds release strings injected by cmd/gru at link time. |
|
media
|
|
|
imaging
Package imaging provides decode and thumbnail helpers for T2a (pure Go).
|
Package imaging provides decode and thumbnail helpers for T2a (pure Go). |
|
samples
|
|
|
hello
Package hello is the public “Hello, Gru” sample UI (not part of the demo catalog).
|
Package hello is the public “Hello, Gru” sample UI (not part of the demo catalog). |
|
webviewhello
Package webviewhello is the WebView shell sample — native chrome + HTML body.
|
Package webviewhello is the WebView shell sample — native chrome + HTML body. |
|
Package ui (continued) See node.go for the full package documentation.
|
Package ui (continued) See node.go for the full package documentation. |
|
markdown
Package markdown registers a goldmark (GFM) DocumentSpec bridge into package ui.
|
Package markdown registers a goldmark (GFM) DocumentSpec bridge into package ui. |
|
preview
Package preview provides focused preview widgets: markdown rendering, syntax highlighting, and math placeholders.
|
Package preview provides focused preview widgets: markdown rendering, syntax highlighting, and math placeholders. |
|
spell
Package spell registers a Hunspell/gospell SpellChecker backend into package ui.
|
Package spell registers a Hunspell/gospell SpellChecker backend into package ui. |
|
syntax
Package syntax registers Chroma-backed syntax highlighting into package ui.
|
Package syntax registers Chroma-backed syntax highlighting into package ui. |
|
Package x11util activates Gru Notepad windows on X11 (WSLg, Linux desktop).
|
Package x11util activates Gru Notepad windows on X11 (WSLg, Linux desktop). |