Files
Bitsy 3a333c35af Initial ComposeNativeSDL3 — Compose Desktop subset with SDL3 backend
Implements a Compose Desktop subset running on Kotlin/Native with SDL3
as the rendering backend (no JVM required).

Architecture:
- compose.ui: Color, Dp, Constraints, Modifier, Alignment, Arrangement
- compose.ui.node: LayoutNode (tree + layout), NodeApplier (Compose Applier)
- compose.ui.input: PointerEvent, KeyEvent types
- compose.foundation: Box, Row, Column, Spacer, BasicText
- compose.material: Button, Surface, Text, Theme (dark/light Colors)
- sdl3backend: SDL3Backend, SDL3Renderer, SDL3TextRenderer, SDL3EventMapper,
  ComposeWindow (Recomposer + frame clock + event loop)

Features:
- Real @Composable functions via JetBrains compose-runtime
- State management (mutableStateOf, remember) with recomposition
- Constraint-based layout (Box stacking, Row/Column flex)
- Modifier chain system (padding, background, border, size, clickable)
- SDL3 hardware-accelerated 2D rendering
- SDL3_ttf text rendering (system fonts)
- Mouse click → hit test → handler dispatch
- Window resize handling
- Targets: macosArm64, linuxX64, linuxArm64, mingwX64
2026-06-19 22:39:54 +02:00

47 KiB