1 Commits

Author SHA1 Message Date
3d10cc9635 Clean up startup 2021-12-20 13:52:34 -05:00

View File

@@ -3,6 +3,7 @@ using Common.IO;
using Common.Wpf.Extensions; using Common.Wpf.Extensions;
using Squirrel; using Squirrel;
using System; using System;
using System.Reflection;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows; using System.Windows;
using System.Windows.Threading; using System.Windows.Threading;
@@ -35,6 +36,10 @@ namespace WorkIndicator
_dispatcher = Dispatcher.CurrentDispatcher; _dispatcher = Dispatcher.CurrentDispatcher;
// Initialize the command line listener
_commandLineListener = new InterprocessMessageListener(Assembly.GetEntryAssembly().GetName().Name);
_commandLineListener.MessageReceived += HandleCommandLine;
// Initialize the tray icon // Initialize the tray icon
TrayIcon.Initialize(); TrayIcon.Initialize();
@@ -54,15 +59,16 @@ namespace WorkIndicator
// If there is another copy then pass it the command line and exit // If there is another copy then pass it the command line and exit
if (_isolationHandle == null) if (_isolationHandle == null)
{ {
InterprocessMessageSender.SendMessage(Environment.CommandLine); try
Shutdown(); {
InterprocessMessageSender.SendMessage(Environment.CommandLine);
}
catch { }
_dispatcher.Invoke(Shutdown);
return; return;
} }
// Initialize the command line listener
_commandLineListener = new InterprocessMessageListener(WorkIndicator.Properties.Resources.ApplicationName);
_commandLineListener.MessageReceived += HandleCommandLine;
// Set automatic start into the registry // Set automatic start into the registry
Current.SetStartWithWindows(Settings.Default.StartWithWindows); Current.SetStartWithWindows(Settings.Default.StartWithWindows);
@@ -73,7 +79,7 @@ namespace WorkIndicator
private void HandleCommandLine(object sender, InterprocessMessageListener.InterprocessMessageEventArgs e) private void HandleCommandLine(object sender, InterprocessMessageListener.InterprocessMessageEventArgs e)
{ {
} }
private async Task<bool> CheckUpdate() private async Task<bool> CheckUpdate()
@@ -98,7 +104,7 @@ namespace WorkIndicator
TrayIcon.Dispose(); TrayIcon.Dispose();
// Get rid of the isolation handle // Get rid of the isolation handle
_isolationHandle.Dispose(); _isolationHandle?.Dispose();
base.OnExit(e); base.OnExit(e);
} }