aboutsummaryrefslogtreecommitdiffstats
path: root/WarframeClock
diff options
context:
space:
mode:
Diffstat (limited to 'WarframeClock')
-rw-r--r--WarframeClock/App.xaml.cs1
-rw-r--r--WarframeClock/OverlayWindow.xaml.cs2
-rw-r--r--WarframeClock/StandaloneOverlayWindow.xaml.cs15
3 files changed, 16 insertions, 2 deletions
diff --git a/WarframeClock/App.xaml.cs b/WarframeClock/App.xaml.cs
index 6dbbda5..f5f92f3 100644
--- a/WarframeClock/App.xaml.cs
+++ b/WarframeClock/App.xaml.cs
@@ -57,6 +57,7 @@ namespace WarframeClock
Text = $"Warframe Clock - {App.VersionString}",
Visible = true
};
+ _notifyIcon.Click += (_, __) => MainWindow.Show();
// Last, start the main window
if (Settings.Standalone)
diff --git a/WarframeClock/OverlayWindow.xaml.cs b/WarframeClock/OverlayWindow.xaml.cs
index e469d6f..63df9b5 100644
--- a/WarframeClock/OverlayWindow.xaml.cs
+++ b/WarframeClock/OverlayWindow.xaml.cs
@@ -41,7 +41,7 @@ namespace WarframeClock
{
if (e.PropertyName == nameof(OverlayWindowViewModel.Standalone) && _vm.Standalone)
{
- new StandaloneOverlayWindow(_vm).Show();
+ (App.Current.MainWindow = new StandaloneOverlayWindow(_vm)).Show();
Close();
}
}
diff --git a/WarframeClock/StandaloneOverlayWindow.xaml.cs b/WarframeClock/StandaloneOverlayWindow.xaml.cs
index 00be945..86cdcc1 100644
--- a/WarframeClock/StandaloneOverlayWindow.xaml.cs
+++ b/WarframeClock/StandaloneOverlayWindow.xaml.cs
@@ -11,6 +11,7 @@ namespace WarframeClock
public partial class StandaloneOverlayWindow : Window
{
private readonly OverlayWindowViewModel _vm;
+ private bool _closing = false;
public StandaloneOverlayWindow(OverlayWindowViewModel vm)
{
@@ -20,6 +21,17 @@ namespace WarframeClock
_vm.PropertyChanged += OnVmPropertyChanged;
}
+ protected override void OnClosing(CancelEventArgs e)
+ {
+ base.OnClosing(e);
+
+ if (!_closing)
+ {
+ e.Cancel = true;
+ Hide();
+ }
+ }
+
protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
@@ -30,7 +42,8 @@ namespace WarframeClock
{
if (e.PropertyName == nameof(OverlayWindowViewModel.Standalone) && !_vm.Standalone)
{
- new OverlayWindow(_vm).Show();
+ (App.Current.MainWindow = new OverlayWindow(_vm)).Show();
+ _closing = true;
Close();
}
}