gui/pkg/environment/messages.go
Claude 479537d12c
feat(gui): theme override, clipboard images, notifications, tray, layout helpers
Pass from codex implementing RFC spec gaps: theme_set IPC + state,
clipboard image read/write + MCP exposure, interactive notifications
and clearing, real tray tooltip/label/menu/message tasks, layout
heuristics (layout_suggest, layout_beside_editor, screen_find_space,
window_arrange_pair), dialog_message, focus_set, screen_work_area.

Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-14 14:18:05 +01:00

32 lines
971 B
Go

// pkg/environment/messages.go
package environment
// QueryTheme returns the current theme. Result: ThemeInfo
type QueryTheme struct{}
// QueryInfo returns environment information. Result: EnvironmentInfo
type QueryInfo struct{}
// QueryAccentColour returns the system accent colour. Result: string
type QueryAccentColour struct{}
// TaskSetTheme overrides the application theme. Theme values: "light", "dark", "system".
type TaskSetTheme struct {
Theme string `json:"theme"`
}
// TaskOpenFileManager opens the system file manager. Result: error only
type TaskOpenFileManager struct {
Path string `json:"path"`
Select bool `json:"select"`
}
// QueryFocusFollowsMouse returns whether focus-follows-mouse is enabled. Result: bool
//
// result := c.QUERY(environment.QueryFocusFollowsMouse{})
type QueryFocusFollowsMouse struct{}
// ActionThemeChanged is broadcast when the system theme changes.
type ActionThemeChanged struct {
IsDark bool `json:"isDark"`
}