Reapply brightness on display config change

This commit is contained in:
Serge
2024-03-01 23:19:44 +01:00
parent c1a6019d57
commit f36a55f086
3 changed files with 30 additions and 5 deletions

View File

@@ -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);

View File

@@ -101,6 +101,8 @@ namespace GHelper.Helpers
if (Program.settingsForm.Visible)
Program.screenControl.InitScreen();
Program.screenControl.SetBrightness();
}
private static int CheckAndSaveLidAction()

View File

@@ -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 + "%";
}