Properties3
Is BaseNo
Icon
Order
20KelyphosShellState is the @Observable class that drives all shell behavior. Create one instance per window and pass it wherever you need shell control.
Properties
| Property | Type | Description |
|---|---|---|
title | String | Window/navigation bar title |
subtitle | String | Toolbar subtitle (macOS) |
navigatorVisible | Bool | Navigator sidebar visibility |
inspectorVisible | Bool | Inspector panel visibility |
utilityAreaVisible | Bool | Utility panel visibility |
inspectorEnabled | Bool | Whether inspector is available |
utilityEnabled | Bool | Whether utility area is available |
selectedNavigatorIndex | Int | Active navigator tab index |
selectedInspectorIndex | Int | Active inspector tab index |
vibrancyMaterial | KelyphosVibrancyMaterial | NSVisualEffectView material |
backgroundAlpha | Double | Panel background opacity (0–1) |
windowAppearance | String | "auto", "light", or "dark" |
colorTheme | KelyphosColorTheme | Semantic color slots |
Initialization
let state = KelyphosShellState(persistencePrefix: "myapp.editor")
State is automatically persisted to UserDefaults using the prefix as a namespace.
