diff --git a/Dashboard/MainWindow.xaml.cs b/Dashboard/MainWindow.xaml.cs index 2c093a3c..9640386e 100644 --- a/Dashboard/MainWindow.xaml.cs +++ b/Dashboard/MainWindow.xaml.cs @@ -533,7 +533,12 @@ private void OpenServerTab(ServerConnection server) ServerTabControl.Items.Add(tabItem); _openTabs[server.Id] = tabItem; - ServerTabControl.SelectedItem = tabItem; + + var prefs = _preferencesService.GetPreferences(); + if (prefs.FocusServerTabOnClick) + { + ServerTabControl.SelectedItem = tabItem; + } _serverManager.UpdateLastConnected(server.Id); } diff --git a/Dashboard/Models/UserPreferences.cs b/Dashboard/Models/UserPreferences.cs index 07f874fe..24ea603d 100644 --- a/Dashboard/Models/UserPreferences.cs +++ b/Dashboard/Models/UserPreferences.cs @@ -100,6 +100,9 @@ public class UserPreferences public bool McpEnabled { get; set; } = false; public int McpPort { get; set; } = 5150; + // Navigation settings + public bool FocusServerTabOnClick { get; set; } = true; + // Update check settings public bool CheckForUpdatesOnStartup { get; set; } = true; diff --git a/Dashboard/SettingsWindow.xaml b/Dashboard/SettingsWindow.xaml index d44a7a4f..b86ae316 100644 --- a/Dashboard/SettingsWindow.xaml +++ b/Dashboard/SettingsWindow.xaml @@ -54,7 +54,7 @@ - + @@ -63,6 +63,12 @@ + + + + diff --git a/Dashboard/SettingsWindow.xaml.cs b/Dashboard/SettingsWindow.xaml.cs index 99e4fcf0..e80f5720 100644 --- a/Dashboard/SettingsWindow.xaml.cs +++ b/Dashboard/SettingsWindow.xaml.cs @@ -86,6 +86,9 @@ private void LoadSettings() DefaultTimeRangeComboBox.SelectedIndex = 2; // 24 hours } + // Navigation settings + FocusServerTabCheckBox.IsChecked = prefs.FocusServerTabOnClick; + // Query logging settings LogSlowQueriesCheckBox.IsChecked = prefs.LogSlowQueries; QueryLogger.SetEnabled(prefs.LogSlowQueries); @@ -420,6 +423,9 @@ private void OkButton_Click(object sender, RoutedEventArgs e) prefs.DefaultHoursBack = int.Parse(rangeItem.Tag.ToString()!, CultureInfo.InvariantCulture); } + // Save navigation settings + prefs.FocusServerTabOnClick = FocusServerTabCheckBox.IsChecked == true; + // Save query logging settings prefs.LogSlowQueries = LogSlowQueriesCheckBox.IsChecked == true; QueryLogger.SetEnabled(prefs.LogSlowQueries);