IO-402 Power Mode Handling
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using Microsoft.Win32;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Data;
|
||||
@@ -21,6 +22,7 @@ namespace BodyshopPartner
|
||||
|
||||
private void Application_Exit(object sender, ExitEventArgs e)
|
||||
{
|
||||
Utils.PowerModeEventHandler.DisposeEventHandler();
|
||||
BodyshopPartner.Properties.Settings.Default.Save();
|
||||
Utils.QuickBooksInterop.DisconnectFromQuickBooks();
|
||||
}
|
||||
|
||||
@@ -400,6 +400,7 @@
|
||||
<Compile Include="Utils\JsonExtensions.cs" />
|
||||
<Compile Include="Utils\LoginHelpers.cs" />
|
||||
<Compile Include="Utils\Notifications.cs" />
|
||||
<Compile Include="Utils\PowerModeEventHandler.cs" />
|
||||
<Compile Include="Utils\Queries\JobsQueries.cs" />
|
||||
<Compile Include="Utils\Queries\VehicleQueries.cs" />
|
||||
<Compile Include="Utils\QuickBooksInterop.cs" />
|
||||
|
||||
42
BodyshopUploader/Utils/PowerModeEventHandler.cs
Normal file
42
BodyshopUploader/Utils/PowerModeEventHandler.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using Microsoft.Win32;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows;
|
||||
|
||||
namespace BodyshopPartner.Utils
|
||||
{
|
||||
public static class PowerModeEventHandler
|
||||
{
|
||||
//public static event Microsoft.Win32.PowerModeChangedEventHandler PowerModeChanged;
|
||||
private static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();
|
||||
|
||||
public static void InitEventHandler()
|
||||
{
|
||||
SystemEvents.PowerModeChanged += OnPowerModeChanged;
|
||||
}
|
||||
|
||||
public static void OnPowerModeChanged(object sender, PowerModeChangedEventArgs e)
|
||||
{
|
||||
//Handle the event here.
|
||||
if (e.Mode == PowerModes.Suspend)
|
||||
{
|
||||
logger.Debug("System is being suspended. Preparing...");
|
||||
|
||||
}
|
||||
else if (e.Mode == PowerModes.Resume)
|
||||
{
|
||||
logger.Debug("System is no longer suspended. Restarting partner...");
|
||||
Application.Current.MainWindow.UpdateLayout();
|
||||
}
|
||||
}
|
||||
|
||||
public static void DisposeEventHandler()
|
||||
{
|
||||
|
||||
SystemEvents.PowerModeChanged -= OnPowerModeChanged;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -82,6 +82,7 @@ namespace BodyshopPartner.ViewModels
|
||||
Task.Run(() => Utils.HTTPServer.InitHttpServer(AddHttpStatus));
|
||||
Task.Run(() => updateCheck());
|
||||
StartAllFolderMonitors();
|
||||
Utils.PowerModeEventHandler.InitEventHandler();
|
||||
_callingThread.ReportProgress(100);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user