@@ -99,20 +99,6 @@ func (m *TuiModel) loadCatalogCmd(force bool) tea.Cmd {
9999 }
100100}
101101
102- func (m * TuiModel ) rebootServerCmd () tea.Cmd {
103- return func () tea.Msg {
104- m .runtime .msgChan <- logLineMsg ("ℹ Theme change detected. Rebooting dev server…" )
105- var metaDir string
106- if m .ctx != nil {
107- metaDir = m .ctx .Paths .MetaDir
108- }
109- stopServeTaskSync (m .workspaceRoot , metaDir , m .runtime )
110- time .Sleep (1500 * time .Millisecond )
111- m .RunServeTask ()
112- return nil
113- }
114- }
115-
116102func (m * TuiModel ) checkServerStatusCmd () tea.Cmd {
117103 return func () tea.Msg {
118104 if m .ctx == nil {
@@ -317,13 +303,10 @@ func (m *TuiModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
317303 if len (items ) > 0 && m .selectedIndex < len (items ) {
318304 pkg := items [m .selectedIndex ]
319305 if m .activeTab == 3 { // Themes (radiobox)
320- active := false
321- if m .ctx != nil && m .ctx .Config .Theme != nil && * m .ctx .Config .Theme == pkg .Name {
322- active = true
323- }
324- if active {
306+ current := activeThemeName (m .ctx , m .pendingTheme )
307+ if current == pkg .Name && m .pendingTheme != nil {
325308 m .pendingTheme = nil
326- } else {
309+ } else if current != pkg . Name {
327310 themeName := pkg .Name
328311 m .pendingTheme = & themeName
329312 }
@@ -395,15 +378,6 @@ func (m *TuiModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
395378 m .err = msg .Err
396379 m .statusMsg = fmt .Sprintf ("Error loading workspace: %v" , msg .Err )
397380 } else {
398- themeChanged := false
399- if m .ctx != nil && m .ctx .Config .Theme != nil && msg .Ctx .Config .Theme != nil {
400- if * m .ctx .Config .Theme != * msg .Ctx .Config .Theme {
401- themeChanged = true
402- }
403- } else if (m .ctx != nil && m .ctx .Config .Theme == nil && msg .Ctx .Config .Theme != nil ) || (m .ctx != nil && m .ctx .Config .Theme != nil && msg .Ctx .Config .Theme == nil ) {
404- themeChanged = true
405- }
406-
407381 m .ctx = msg .Ctx
408382 m .statusMsg = "Workspace loaded."
409383
@@ -413,12 +387,6 @@ func (m *TuiModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
413387 m .StartLogTailer (logPath )
414388 }
415389
416- if themeChanged && m .serverRunning {
417- m .statusMsg = "Rebooting server for theme change…"
418- m .activeTask = TaskServe
419- return m , m .rebootServerCmd ()
420- }
421-
422390 return m , m .checkServerStatusCmd ()
423391 }
424392
@@ -505,6 +473,9 @@ func (m *TuiModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
505473 if msg .Success {
506474 m .statusMsg = "Task completed."
507475 m .addLog ("✓ Wizard completed successfully" )
476+ if m .serverRunning {
477+ m .addLog ("ℹ desktop.config.ts updated — Nuxt restarts automatically (see dev server log)" )
478+ }
508479
509480 if m .startServerAfterSetup {
510481 m .startServerAfterSetup = false
0 commit comments