summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/app
diff options
context:
space:
mode:
authoradamdottv <[email protected]>2025-06-20 14:40:39 -0500
committeradamdottv <[email protected]>2025-06-20 15:14:22 -0500
commit4f7e4a9436673639a728ecaced1a56e96bd552f8 (patch)
treef0bf726b4f6a6d6ae2abeffc709dfdf52ecff555 /packages/tui/internal/app
parenteee396f903df22209c9d910afd67b69a91430119 (diff)
downloadopencode-4f7e4a9436673639a728ecaced1a56e96bd552f8.tar.gz
opencode-4f7e4a9436673639a728ecaced1a56e96bd552f8.zip
feat(tui): custom themes
Diffstat (limited to 'packages/tui/internal/app')
-rw-r--r--packages/tui/internal/app/app.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/packages/tui/internal/app/app.go b/packages/tui/internal/app/app.go
index 787a12844..72d30d196 100644
--- a/packages/tui/internal/app/app.go
+++ b/packages/tui/internal/app/app.go
@@ -60,6 +60,9 @@ func New(
if err != nil {
return nil, err
}
+ if configResponse.StatusCode() != 200 || configResponse.JSON200 == nil {
+ return nil, fmt.Errorf("failed to get config: %d", configResponse.StatusCode())
+ }
configInfo := configResponse.JSON200
if configInfo.Keybinds == nil {
leader := "ctrl+x"
@@ -85,6 +88,15 @@ func New(
appState.Model = strings.Join(splits[1:], "/")
}
+ // Load themes from all directories
+ if err := theme.LoadThemesFromDirectories(
+ appInfo.Path.Config,
+ appInfo.Path.Root,
+ appInfo.Path.Cwd,
+ ); err != nil {
+ slog.Warn("Failed to load themes from directories", "error", err)
+ }
+
if appState.Theme != "" {
theme.SetTheme(appState.Theme)
}