diff --git a/TFI/Features/Settings/MobileTerminalThemeView.swift b/TFI/Features/Settings/MobileTerminalThemeView.swift index 93c3418e..d2c0ce4c 100644 --- a/TFI/Features/Settings/MobileTerminalThemeView.swift +++ b/TFI/Features/Settings/MobileTerminalThemeView.swift @@ -6,6 +6,7 @@ import TermindPresentation struct MobileTerminalThemeView: View { let model: TerminalSettingsModel let isDark: Bool + @Environment(\.dismiss) private var dismiss @State private var query = "" @State private var hoveredTheme: String? @State private var isEditing = false @@ -63,11 +64,11 @@ struct MobileTerminalThemeView: View { let hoverID = custom ? "__custom__" : theme.name let selected = custom ? options.isCustom : options.isSelected(theme.name) return MobileActionCard { - if custom { - model.selectCustomTheme(isDark: isDark) - } else { - model.selectTheme(named: theme.name, isDark: isDark) - } + let saved = + custom + ? model.selectCustomTheme(isDark: isDark) + : model.selectTheme(named: theme.name, isDark: isDark) + if saved { dismiss() } } content: { HStack(spacing: 12) { TerminalThemeThumbnail( diff --git a/TFM/Features/Settings/TerminalThemePage.swift b/TFM/Features/Settings/TerminalThemePage.swift index 91fd70bd..6ad590f7 100644 --- a/TFM/Features/Settings/TerminalThemePage.swift +++ b/TFM/Features/Settings/TerminalThemePage.swift @@ -38,11 +38,11 @@ struct TerminalThemePage: View { let hoverID = custom ? "__custom__" : theme.name let selected = custom ? options.isCustom : options.isSelected(theme.name) let select: () -> Void = { - if custom { - app.terminalSettings.selectCustomTheme(isDark: scheme == .dark) - } else { - app.terminalSettings.selectTheme(named: theme.name, isDark: scheme == .dark) - } + let saved = + custom + ? app.terminalSettings.selectCustomTheme(isDark: scheme == .dark) + : app.terminalSettings.selectTheme(named: theme.name, isDark: scheme == .dark) + if saved { window.navigateBackInSettings() } } return CardTile( isSelected: selected,