diff --git a/app/Display/ScreenControl.cs b/app/Display/ScreenControl.cs index 4220f4a4..c979af5d 100644 --- a/app/Display/ScreenControl.cs +++ b/app/Display/ScreenControl.cs @@ -47,6 +47,17 @@ namespace GHelper.Display } } + public void SetBrightness(int brightness = -1) + { + if (!AppConfig.IsOLED()) return; + + if (brightness >= 0) AppConfig.Set("brightness", brightness); + else brightness = AppConfig.Get("brightness"); + + if (brightness >= 0) SetGamma(brightness); + } + + public void SetGamma(int brightness = 100) { var bright = Math.Round((float)brightness / 200 + 0.5, 2); diff --git a/app/Fan/FanSensorControl.cs b/app/Fan/FanSensorControl.cs index f1e62747..0e3f1dce 100644 --- a/app/Fan/FanSensorControl.cs +++ b/app/Fan/FanSensorControl.cs @@ -9,7 +9,7 @@ namespace GHelper.Fan public const int XGM_FAN_MAX = 72; - public const int INADEQUATE_MAX = 92; + public const int INADEQUATE_MAX = 104; const int FAN_COUNT = 3; diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs index 16b7492e..4068d33d 100644 --- a/app/Helpers/ClamshellModeControl.cs +++ b/app/Helpers/ClamshellModeControl.cs @@ -101,6 +101,8 @@ namespace GHelper.Helpers if (Program.settingsForm.Visible) Program.screenControl.InitScreen(); + Program.screenControl.SetBrightness(); + } private static int CheckAndSaveLidAction() diff --git a/app/Settings.cs b/app/Settings.cs index b5c34a81..1baa10c0 100644 --- a/app/Settings.cs +++ b/app/Settings.cs @@ -254,16 +254,28 @@ namespace GHelper VisualiseFnLock(); buttonFnLock.Click += ButtonFnLock_Click; - panelGamma.Visible = AppConfig.IsOLED(); - sliderGamma.ValueChanged += SliderGamma_ValueChanged; - labelGamma.Text = "100%"; - panelPerformance.Focus(); + + InitBrightness(); } + public void InitBrightness() + { + if (!AppConfig.IsOLED()) return; + + panelGamma.Visible = true; + + int brightness = AppConfig.Get("brightness"); + if (brightness >= 0) sliderGamma.Value = brightness; + + sliderGamma.ValueChanged += SliderGamma_ValueChanged; + labelGamma.Text = sliderGamma.Value + "%"; + } + + private void SliderGamma_ValueChanged(object? sender, EventArgs e) { - screenControl.SetGamma(sliderGamma.Value); + screenControl.SetBrightness(sliderGamma.Value); labelGamma.Text = sliderGamma.Value + "%"; }