Virgil
031c286fb9
Align GUI packages with AX conventions
Security Scan / security (push) Has been cancelled
Test / test (push) Has been cancelled
2026-04-02 20:51:26 +00:00
Virgil
6b3879fb9a
refactor(ax): make webview registration declarative
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 20:47:33 +00:00
Virgil
98b73fc14c
refactor(display): add AX usage examples
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 20:39:36 +00:00
Virgil
d3443d4be9
chore(gui): add AX usage examples
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 20:31:56 +00:00
Virgil
29dc0d9877
refactor(gui): make theme override declarative
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 20:22:47 +00:00
Virgil
b50149af5d
feat(display): support prompt dialogs via webview fallback
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 20:08:42 +00:00
Virgil
0423f3058d
chore(gui): add AX usage examples
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:54:47 +00:00
Virgil
81503d0968
chore(gui): align AX naming and docs
...
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 19:50:55 +00:00
Virgil
8db26398af
Expand display websocket window bridge
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:45:31 +00:00
Virgil
fdff5435c2
refactor(gui): tighten display AX docs
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:35:03 +00:00
Virgil
cf8091e7e7
Add display layout helper wrappers
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:32:00 +00:00
Virgil
b8ddd2650b
docs(display): add AX usage examples
...
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 19:28:48 +00:00
Virgil
cf284e9954
feat(gui): add event info and layout query fixes
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:21:28 +00:00
Virgil
856bb89022
docs(gui): align public API comments with AX
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:12:40 +00:00
Virgil
483c408497
Implement tray close-desktop action
Security Scan / security (push) Waiting to run
Test / test (push) Waiting to run
2026-04-02 19:03:11 +00:00
Virgil
4f7236a8bb
feat(gui): add compatibility aliases for spec names
...
Test / test (push) Waiting to run
Security Scan / security (push) Failing after 14m34s
Co-authored-by: Virgil <virgil@lethean.io>
2026-04-02 14:54:14 +00:00
Virgil
4f4a4eb8e4
feat(window): add window opacity support
...
Test / test (push) Waiting to run
Security Scan / security (push) Failing after 35s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 14:42:03 +00:00
Virgil
45fa6942f7
feat(window): expose visibility in window lists
...
Security Scan / security (push) Failing after 29s
Test / test (push) Successful in 1m18s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 14:36:08 +00:00
Virgil
77e03060ac
feat(window): expose visibility and minimized state
...
Security Scan / security (push) Failing after 31s
Test / test (push) Successful in 1m28s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 14:30:42 +00:00
Virgil
81b71ff50b
refactor(display): delegate window mutations through IPC
...
Security Scan / security (push) Failing after 35s
Test / test (push) Successful in 1m22s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 14:25:25 +00:00
Virgil
c3361b7064
refactor(gui): align gui services with ax guidance
Security Scan / security (push) Failing after 36s
Test / test (push) Successful in 1m15s
2026-04-02 14:13:58 +00:00
Virgil
973217ae54
feat(gui): bridge arrange-pair and find-space
Security Scan / security (push) Failing after 42s
Test / test (push) Successful in 1m34s
2026-04-02 14:08:32 +00:00
Virgil
a07fa49c20
feat(gui): add missing window mutators and MCP tools
...
Security Scan / security (push) Failing after 35s
Test / test (push) Successful in 1m34s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 14:03:29 +00:00
Virgil
57fb567a68
feat(gui): add webview element screenshots
Security Scan / security (push) Waiting to run
Test / test (push) Successful in 1m36s
2026-04-02 13:55:56 +00:00
Virgil
a4c696ec01
Implement display service spec wrappers
Security Scan / security (push) Failing after 20s
Test / test (push) Successful in 1m28s
2026-04-02 13:48:27 +00:00
Virgil
573eb5216a
feat(systray): wire tray mutations and submenus
...
Security Scan / security (push) Failing after 29s
Test / test (push) Successful in 1m22s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 13:39:36 +00:00
Virgil
a0cad39fbb
feat(gui): add webview diagnostics and tray fallback
...
Security Scan / security (push) Failing after 22s
Test / test (push) Successful in 1m25s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 13:29:46 +00:00
Virgil
3413b64f6c
Expose layout stack and workflow actions
2026-04-02 13:23:17 +00:00
Virgil
3c5c109c3a
feat(display): bridge missing GUI features
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 13:17:20 +00:00
Virgil
a1fbcdf6ed
feat(window): restore config and screen-aware layouts
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 13:09:54 +00:00
Virgil
5653bfcc8d
feat(mcp): implement missing GUI features
...
Co-Authored-By: Virgil <virgil@lethean.io>
2026-04-02 13:03:55 +00:00
Snider
4bdbb68f46
refactor: update import path from go-config to core/config
...
Security Scan / security (push) Failing after 9s
Test / test (push) Failing after 1m21s
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-14 10:26:36 +00:00
Snider
f884d698b2
fix(display): correct GetWindowTitle and add WS input validation
...
Security Scan / security (push) Failing after 9s
Test / test (push) Has been cancelled
GetWindowTitle was returning info.Name (the window's identifier) instead
of the actual title. Added Title() to the PlatformWindow interface and
Title field to WindowInfo so the real title flows through queries.
Added wsRequire() helper and input validation for all webview:* WS
message cases — window name is required for every webview action, and
selectors/URLs are validated where they'd cause errors if empty.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 16:25:29 +00:00
Snider
b3f380e949
feat(display): add webview IPC->WS bridging (18 cases)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 16:03:50 +00:00
Snider
49a83110fb
refactor(display): migrate stale Wails calls to IPC, remove wrapper types
...
Security Scan / security (push) Failing after 9s
Test / test (push) Failing after 1m35s
Migrate handleOpenFile to dialog.TaskOpenFile IPC, handleSaveFile/handleRun/
handleBuild to ActionIDECommand IPC. Remove DialogManager, EnvManager,
EventManager interfaces and wailsDialogManager, wailsEnvManager,
wailsEventManager adapter structs. App interface now has Quit() + Logger() only.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:53:50 +00:00
Snider
07bc116abd
feat(display): add contextmenu integration and ActionIDECommand to orchestrator
...
Add HandleIPCEvents cases for contextmenu.ActionItemClicked and
ActionIDECommand, WS->IPC bridge cases for contextmenu:add/remove/get/list,
EventContextMenuClick and EventIDECommand constants.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:52:38 +00:00
Snider
7ea92419ae
feat(display): add dock + lifecycle HandleIPCEvents and WS bridge integration
...
Security Scan / security (push) Failing after 8s
Test / test (push) Failing after 1m36s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:42:48 +00:00
Snider
22315d07bb
feat(display): wire keybinding, browser, and file drop through orchestrator
...
Security Scan / security (push) Failing after 7s
Test / test (push) Failing after 1m32s
Adds EventKeybindingTriggered and EventWindowFileDrop EventType constants.
HandleIPCEvents bridges keybinding.ActionTriggered and window.ActionFilesDropped
to WS events. handleWSMessage bridges WS commands to IPC for keybinding:add,
keybinding:remove, keybinding:list, browser:open-url, browser:open-file.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:38:18 +00:00
Snider
bba743d2cb
refactor(display): remove extracted clipboard/dialog/notification/theme/screen code
...
Security Scan / security (push) Failing after 9s
Test / test (push) Failing after 1m33s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:24:06 +00:00
Snider
335d93d05c
feat(display): bridge new service Actions to WSEventManager
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 14:20:43 +00:00
Snider
92333ff2db
feat(display): wire go-config for config file persistence
...
Security Scan / security (push) Failing after 8s
Test / test (push) Failing after 1m25s
Replace the in-memory loadConfig() stub with real ~/.core/gui/config.yaml
loading via go-config. handleConfigTask now persists changes to disk via
cfg.Set() + cfg.Commit(). Sub-service applyConfig() stubs fleshed out:
window reads default dimensions (TODO: Manager API), systray stores icon
path, menu reads show_dev_tools flag with accessor.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 13:54:28 +00:00
Snider
49e1faed54
feat(display): convert delegation to IPC, full conclave integration
...
Display methods now route through IPC bus instead of direct Manager calls.
Menu/tray setup uses PERFORM. Tray click actions handled via HandleIPCEvents.
WindowInfo aliased from window package. Direct Manager refs removed.
Integration tests verify full 4-service conclave startup and communication.
Service struct no longer holds windows/tray/menus fields — uses windowService()
for direct Manager access where IPC messages are not yet defined.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 13:36:55 +00:00
Snider
0893456a9e
feat(display): add HandleIPCEvents IPC->WS bridge
...
Display HandleIPCEvents converts sub-service actions to WS events.
ActionServiceStartup triggers buildMenu/setupTray after all services start.
Export mock platforms from each sub-package for integration tests.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 13:32:16 +00:00
Snider
d29cf62e6f
feat(display): refactor to closure Register pattern, add config IPC handlers
...
Register(wailsApp) returns factory closure for WithService.
OnStartup registers config query/task handlers synchronously.
Handles window.QueryConfig, systray.QueryConfig, menu.QueryConfig.
Remove ServiceName() — auto-derived as 'display' by WithService.
Remove ServiceStartup/Startup — replaced by OnStartup (Startable interface).
Remove actions.go — replaced by sub-package message types.
Add EventTrayClick and EventTrayMenuItemClick event types.
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 13:30:26 +00:00
Snider
afe92e0275
refactor: move ui/ demo to top level
...
Moved pkg/display/ui/ to top-level ui/ directory. No go:embed
references needed updating.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:27:52 +00:00
Snider
4814f960fb
refactor(display): compose window/systray/menu sub-packages into orchestrator
...
Service now delegates to window.Manager, systray.Manager, and menu.Manager
instead of directly using Wails types. WSEventManager accepts EventSource
interface instead of calling application.Get() directly.
AttachWindowListeners now accepts window.PlatformWindow.
Removes migrated files: window.go, window_state.go, layout.go, tray.go, menu.go.
Tests rewritten against mock platform implementations.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:27:19 +00:00
Snider
691f17ea05
feat(display): add shared types (EventSource)
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-13 12:15:45 +00:00
Snider
88c15d1a8e
docs: add display package split design spec
...
Approved design for restructuring pkg/display/ monolith into 4 focused
packages: window, systray, menu, display (orchestrator).
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-13 11:27:42 +00:00
Snider
8fc50dc2df
fix: update import paths to new repository location
2026-02-16 06:44:02 +00:00
Snider
6c5f4b3d8f
fix: update import paths to new repository location
2026-02-16 06:33:58 +00:00