From ec7350cf5c6643ba47f470134ff8693c530916a0 Mon Sep 17 00:00:00 2001 From: Serge <5920850+seerge@users.noreply.github.com> Date: Sat, 1 Jul 2023 11:46:46 +0200 Subject: [PATCH] Optimized mode switch from Ultimate --- app/Gpu/GPUModeControl.cs | 9 ++++++--- app/Helpers/Startup.cs | 3 ++- app/Settings.cs | 14 +++++++------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/app/Gpu/GPUModeControl.cs b/app/Gpu/GPUModeControl.cs index e1cd8a74..488efbd7 100644 --- a/app/Gpu/GPUModeControl.cs +++ b/app/Gpu/GPUModeControl.cs @@ -145,7 +145,7 @@ namespace GHelper.Gpu if (status == 0 && eco == 1 && hardWay) RestartGPU(); await Task.Delay(TimeSpan.FromMilliseconds(100)); - + settings.Invoke(delegate { InitGPUMode(); @@ -173,7 +173,7 @@ namespace GHelper.Gpu } - public bool AutoGPUMode() + public bool AutoGPUMode(bool optimized = false) { bool GpuAuto = AppConfig.Is("gpu_auto"); @@ -186,8 +186,11 @@ namespace GHelper.Gpu int eco = Program.acpi.DeviceGet(AsusACPI.GPUEco); int mux = Program.acpi.DeviceGet(AsusACPI.GPUMux); - if (mux == 0) // GPU in Ultimate, ignore + if (mux == 0) + { + if (optimized) SetGPUMode(AsusACPI.GPUModeStandard); return false; + } else { diff --git a/app/Helpers/Startup.cs b/app/Helpers/Startup.cs index ae6adc96..e0639bdc 100644 --- a/app/Helpers/Startup.cs +++ b/app/Helpers/Startup.cs @@ -34,8 +34,9 @@ public class Startup using (TaskDefinition td = TaskService.Instance.NewTask()) { + td.RegistrationInfo.Description = "G-Helper Auto Start"; - td.Triggers.Add(new LogonTrigger { UserId = userId }); + td.Triggers.Add(new LogonTrigger { UserId = userId, Delay = TimeSpan.FromSeconds(1) }); td.Actions.Add(strExeFilePath); if (ProcessHelper.IsUserAdministrator()) diff --git a/app/Settings.cs b/app/Settings.cs index a5bf6dff..d842d6e1 100644 --- a/app/Settings.cs +++ b/app/Settings.cs @@ -419,13 +419,6 @@ namespace GHelper } - private void ButtonOptimized_Click(object? sender, EventArgs e) - { - AppConfig.Set("gpu_auto", (AppConfig.Get("gpu_auto") == 1) ? 0 : 1); - VisualiseGPUMode(); - gpuControl.AutoGPUMode(); - } - private void ButtonScreenAuto_Click(object? sender, EventArgs e) { AppConfig.Set("screen_auto", 1); @@ -753,6 +746,13 @@ namespace GHelper } + private void ButtonOptimized_Click(object? sender, EventArgs e) + { + AppConfig.Set("gpu_auto", (AppConfig.Get("gpu_auto") == 1) ? 0 : 1); + VisualiseGPUMode(); + gpuControl.AutoGPUMode(true); + } + private void ButtonStopGPU_Click(object? sender, EventArgs e) { gpuControl.KillGPUApps();