diff --git a/CursorLang/Views/MainWindow.xaml b/CursorLang/Views/MainWindow.xaml
index 19d86bf..d42dad6 100644
--- a/CursorLang/Views/MainWindow.xaml
+++ b/CursorLang/Views/MainWindow.xaml
@@ -8,7 +8,7 @@
mc:Ignorable="d"
d:DataContext="{d:DesignInstance Type=vm:SettingsViewModel}"
Title="{Binding Localization[SettingsTitle]}"
- Width="560" SizeToContent="Height" MaxHeight="900"
+ Width="1000" SizeToContent="Height" MaxHeight="900"
ResizeMode="CanMinimize"
Background="{DynamicResource Theme.WindowBackground}"
Foreground="{DynamicResource Theme.Foreground}">
@@ -16,12 +16,13 @@
+
-
+
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
-
-
+
+
+
+
+
+
+
+
+
+
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
-
-
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
-
-
+
+
-
-
+
+
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+ Visibility="{Binding Updates.IsInstallOffered, Converter={StaticResource BooleanToVisibility}}"
+ Text="{Binding Localization[UpdateInstallHint]}" />
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
diff --git a/CursorLang/Views/MainWindow.xaml.cs b/CursorLang/Views/MainWindow.xaml.cs
index aa09bd5..72d166d 100644
--- a/CursorLang/Views/MainWindow.xaml.cs
+++ b/CursorLang/Views/MainWindow.xaml.cs
@@ -1,4 +1,7 @@
+using System.ComponentModel;
+using System.Diagnostics;
using System.Windows;
+using System.Windows.Navigation;
using CursorLang.Services;
using CursorLang.ViewModels;
@@ -16,4 +19,23 @@ public partial class MainWindow : Window
theme.Register(this);
placement.Attach(this);
}
+
+ ///
+ /// Opens the release page in a browser. A link in WPF leads nowhere on its own:
+ /// where to hand it over is up to the application.
+ ///
+ private void OnReleaseLinkNavigate(object sender, RequestNavigateEventArgs e)
+ {
+ e.Handled = true;
+
+ try
+ {
+ Process.Start(new ProcessStartInfo(e.Uri.AbsoluteUri) { UseShellExecute = true })?.Dispose();
+ }
+ catch (Exception exception) when (exception is Win32Exception or InvalidOperationException)
+ {
+ // There is no browser in the system — that does not get in the way of the
+ // update, which is downloaded by the button next to it anyway
+ }
+ }
}