diff --git a/app/Extra.Designer.cs b/app/Extra.Designer.cs index 07ef08d9..7a2c5382 100644 --- a/app/Extra.Designer.cs +++ b/app/Extra.Designer.cs @@ -326,7 +326,7 @@ namespace GHelper pictureHelp.BackgroundImage = Resources.icons8_help_64; pictureHelp.BackgroundImageLayout = ImageLayout.Zoom; pictureHelp.Cursor = Cursors.Hand; - pictureHelp.Location = new Point(906, 51); + pictureHelp.Location = new Point(912, 51); pictureHelp.Name = "pictureHelp"; pictureHelp.Size = new Size(32, 32); pictureHelp.TabIndex = 9; diff --git a/app/Extra.cs b/app/Extra.cs index f7fc16f9..d3417b93 100644 --- a/app/Extra.cs +++ b/app/Extra.cs @@ -207,10 +207,7 @@ namespace GHelper checkAutoApplyWindowsPowerMode.Checked = (AppConfig.getConfig("auto_apply_power_plan") != 0); checkAutoApplyWindowsPowerMode.CheckedChanged += checkAutoApplyWindowsPowerMode_CheckedChanged; - int kb_brightness = AppConfig.getConfig("keyboard_brightness"); - trackBrightness.Value = (kb_brightness >= 0 && kb_brightness <= 3) ? kb_brightness : 3; - - pictureHelp.Click += PictureHelp_Click; + trackBrightness.Value = InputDispatcher.GetBacklight(); trackBrightness.Scroll += TrackBrightness_Scroll; panelXMG.Visible = (Program.acpi.DeviceGet(AsusACPI.GPUXGConnected) == 1); @@ -228,6 +225,8 @@ namespace GHelper checkFnLock.Checked = AppConfig.isConfig("fn_lock"); checkFnLock.CheckedChanged += CheckFnLock_CheckedChanged; ; + + pictureHelp.Click += PictureHelp_Click; } private void CheckFnLock_CheckedChanged(object? sender, EventArgs e) @@ -265,6 +264,7 @@ namespace GHelper private void TrackBrightness_Scroll(object? sender, EventArgs e) { AppConfig.setConfig("keyboard_brightness", trackBrightness.Value); + AppConfig.setConfig("keyboard_brightness_ac", trackBrightness.Value); AsusUSB.ApplyBrightness(trackBrightness.Value, "Slider"); } diff --git a/app/InputDispatcher.cs b/app/InputDispatcher.cs index 4c925e78..948bcb99 100644 --- a/app/InputDispatcher.cs +++ b/app/InputDispatcher.cs @@ -101,7 +101,7 @@ namespace GHelper if (!backlightActivity && iddle.TotalSeconds < kb_timeout) { backlightActivity = true; - SetBacklightAuto(); + SetBacklight(); } //Debug.WriteLine(iddle.TotalSeconds); @@ -412,18 +412,26 @@ namespace GHelper } - static int GetBacklight() + public static int GetBacklight(bool auto = false) { int backlight_power = AppConfig.getConfig("keyboard_brightness", 1); int backlight_battery = AppConfig.getConfig("keyboard_brightness_ac", 1); bool onBattery = SystemInformation.PowerStatus.PowerLineStatus != PowerLineStatus.Online; - return onBattery ? Math.Min(backlight_battery, backlight_power) : Math.Max(backlight_battery, backlight_power); + int backlight; + + if (auto) + backlight = onBattery ? Math.Min(backlight_battery, backlight_power) : Math.Max(backlight_battery, backlight_power); + else + backlight = onBattery ? backlight_battery : backlight_power; + + return Math.Max(Math.Min(3, backlight), 0); } - public static void SetBacklightAuto() + public static void SetBacklight(bool auto = false) { - AsusUSB.ApplyBrightness(GetBacklight(), "Auto"); + if (auto) AsusUSB.Init(); + AsusUSB.ApplyBrightness(GetBacklight(auto), "Auto"); } public static void SetBacklight(int delta) diff --git a/app/Settings.cs b/app/Settings.cs index e775a1a1..5699b3f1 100644 --- a/app/Settings.cs +++ b/app/Settings.cs @@ -1295,8 +1295,7 @@ namespace GHelper public void AutoKeyboard() { - AsusUSB.Init(); - InputDispatcher.SetBacklightAuto(); + InputDispatcher.SetBacklight(true); } public void AutoPerformance()