mirror of
https://github.com/ayufan/steam-deck-tools.git
synced 2026-03-03 11:33:58 +01:00
Reset LibreHardware on system resume to fix battery bug
This commit is contained in:
parent
652a7277a1
commit
139200c1e5
|
|
@ -38,7 +38,7 @@ namespace CommonHelpers
|
|||
return globalLockMutex;
|
||||
return null;
|
||||
}
|
||||
catch(AbandonedMutexException)
|
||||
catch (AbandonedMutexException)
|
||||
{
|
||||
return globalLockMutex;
|
||||
}
|
||||
|
|
@ -69,13 +69,13 @@ namespace CommonHelpers
|
|||
|
||||
var mutex = WaitGlobalMutex(GLOBAL_DEFAULT_TIMEOUT);
|
||||
|
||||
if (mutex is null)
|
||||
{
|
||||
Fatal(title, "Failed to acquire global mutex.");
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
if (mutex is null)
|
||||
{
|
||||
Fatal(title, "Failed to acquire global mutex.");
|
||||
}
|
||||
|
||||
if (!Vlv0100.IsSupported())
|
||||
{
|
||||
String message = "";
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ namespace FanControl
|
|||
var fanMode = Enum.Parse(typeof(FanMode), Properties.Settings.Default.FanMode);
|
||||
setFanMode((FanMode)fanMode);
|
||||
}
|
||||
catch(System.ArgumentException)
|
||||
catch (System.ArgumentException)
|
||||
{
|
||||
setFanMode(FanMode.Default);
|
||||
}
|
||||
|
|
@ -73,18 +73,13 @@ namespace FanControl
|
|||
|
||||
Microsoft.Win32.SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
|
||||
}
|
||||
protected override void OnClosed(EventArgs e)
|
||||
{
|
||||
base.OnClosed(e);
|
||||
|
||||
Microsoft.Win32.SystemEvents.PowerModeChanged -= SystemEvents_PowerModeChanged;
|
||||
}
|
||||
|
||||
private void SystemEvents_PowerModeChanged(object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
|
||||
{
|
||||
// Restore fan mode on resume
|
||||
if (e.Mode == Microsoft.Win32.PowerModes.Resume)
|
||||
{
|
||||
Instance.HardwareComputer.Reset();
|
||||
fanControl.SetMode(fanControl.Mode);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ namespace PerformanceOverlay
|
|||
public Controller()
|
||||
{
|
||||
contextMenu = new System.Windows.Forms.ContextMenuStrip(components);
|
||||
|
||||
|
||||
SharedData_Update();
|
||||
Instance.Open(TitleWithVersion, "Global\\PerformanceOverlay");
|
||||
|
||||
|
|
@ -119,6 +119,16 @@ namespace PerformanceOverlay
|
|||
updateContextItems(contextMenu);
|
||||
});
|
||||
}
|
||||
|
||||
Microsoft.Win32.SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
|
||||
}
|
||||
|
||||
private void SystemEvents_PowerModeChanged(object sender, Microsoft.Win32.PowerModeChangedEventArgs e)
|
||||
{
|
||||
if (e.Mode == Microsoft.Win32.PowerModes.Resume)
|
||||
{
|
||||
Instance.HardwareComputer.Reset();
|
||||
}
|
||||
}
|
||||
|
||||
private void updateContextItems(ContextMenuStrip contextMenu)
|
||||
|
|
@ -126,7 +136,7 @@ namespace PerformanceOverlay
|
|||
foreach (ToolStripItem item in contextMenu.Items)
|
||||
{
|
||||
if (item.Tag is OverlayMode)
|
||||
((ToolStripMenuItem)item).Checked = ((OverlayMode)item.Tag == Settings.Default.OSDModeParsed);
|
||||
((ToolStripMenuItem)item).Checked = ((OverlayMode)item.Tag == Settings.Default.OSDModeParsed);
|
||||
}
|
||||
|
||||
showItem.Checked = Settings.Default.ShowOSD;
|
||||
|
|
@ -224,7 +234,7 @@ namespace PerformanceOverlay
|
|||
|
||||
osd.Update(osdOverlay);
|
||||
}
|
||||
catch(SystemException)
|
||||
catch (SystemException)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,5 +10,6 @@
|
|||
- Show CPU/GPU frequency in Full overlay
|
||||
- Allow to control GPU Scaling and Display Color Correction
|
||||
- Do not use WinRing0 for GPU detection to control CPU/GPU frequency
|
||||
- Reset `LibreHardware` on system resume to fix battery bug
|
||||
|
||||
If you found it useful buy me [Ko-fi](https://ko-fi.com/ayufan).
|
||||
|
|
|
|||
Loading…
Reference in a new issue