From eeb53cb4839950b781fa099f4cdffca49b45c0e5 Mon Sep 17 00:00:00 2001
From: Serge <5920850+seerge@users.noreply.github.com>
Date: Wed, 26 Jul 2023 20:23:50 +0200
Subject: [PATCH 1/6] New translations Strings.resx (Lithuanian)
---
app/Properties/Strings.lt.resx | 38 +++++++++++++++++-----------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/app/Properties/Strings.lt.resx b/app/Properties/Strings.lt.resx
index bb30cbe3..a2d9553c 100644
--- a/app/Properties/Strings.lt.resx
+++ b/app/Properties/Strings.lt.resx
@@ -163,13 +163,13 @@
Veikiančios Asus tarnybos
- Battery State
+ Būsena
Kvėpavimas
- Clockwise
+ Pagal laikrodžio rodyklę
Spalvų ciklas
@@ -178,7 +178,7 @@
Comet
- Counterclockwise
+ Prieš laikrodžio rodyklę
Greitas
@@ -190,7 +190,7 @@
Vaivorykštė
- Random
+ Atsitiktinė
React
@@ -211,7 +211,7 @@
Automatinis
- Nustato 60Hz, kad stokotų akumuliatorių, ir atgal, kai prijungtas prie lizdo
+ Nustato 60Hz, kad taupytų energiją, ir atgal, kai įjungtas į lizdą
Pabudęs
@@ -271,7 +271,7 @@
Tvarkyklės ir programinė įranga
- Išjungia dGPU, kad stokotų akumuliatorių
+ Išjungia dGPU, kad taupytų energiją
Ekonomiškas
@@ -381,7 +381,7 @@ Vis tiek norite tęsti?
Šviesos juosta
- Lighting
+ Apšvietimas
Logotipas
@@ -420,25 +420,25 @@ Vis tiek norite tęsti?
Maksimalus kadrų dažnis už mažesnę delsą
- 60Hz kadrų dažnis, kad stokotumėte akumuliatorių
+ 60Hz kadrų dažnis, kad taupytumėte energiją
- Minute
+ min.
- Minutes
+ min.
Angle Snapping
- Auto Power Off After
+ Automatiškai išjungti po
Pakilimo atstumas
- Low Battery Warning at
+ Senkančio akumuliatoriaus įspėjimas
Našumas
@@ -453,16 +453,16 @@ Vis tiek norite tęsti?
Mikrofono nutildymas
- Never
+ Niekada
- Prieinami naujinimai
+ Nauji naujinimai
- Nėra prieinamų naujinimų
+ Nėra naujų naujinimų
- Not Connected
+ Neprijungta
Atidaryti G-Helper langą
@@ -471,7 +471,7 @@ Vis tiek norite tęsti?
Optimizuotas
- Perjungti į ekonomišką, kai naudojamas akumuliatorius, ir į standartinį, kai prijungtas prie lizdo
+ Perjungti į ekonomišką, kai naudojamas akumuliatorius, ir į standartinį, kai įjungtas į lizdą
Neįjungti GPU, kai naudojamas USB-C įkroviklis optimizuotame režime
@@ -486,7 +486,7 @@ Vis tiek norite tęsti?
Režimas
- Peripherals
+ Išoriniai įrenginiai
Paveikslėlis / GIF
@@ -495,7 +495,7 @@ Vis tiek norite tęsti?
Paleisti / Pristabdyti
- Polling Rate
+ Iškvietų dažnis
Galios ribos
From ccb413b2e62196cda4d33f3ccacb52efb55aacaf Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Wed, 26 Jul 2023 21:13:24 +0200
Subject: [PATCH 2/6] Clamshell mode is now properly off by default
---
app/Helpers/ClamshellModeControl.cs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs
index d4fb59fc..89fdf00b 100644
--- a/app/Helpers/ClamshellModeControl.cs
+++ b/app/Helpers/ClamshellModeControl.cs
@@ -31,7 +31,7 @@ namespace GHelper.Helpers
public bool IsClamshellEnabled()
{
- return AppConfig.Get("toggle_clamshell_mode") != 0;
+ return AppConfig.Is("toggle_clamshell_mode");
}
public bool IsChargerConnected()
From 254e6a8633b829ed01c8d1a31074d27b906693a8 Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Wed, 26 Jul 2023 21:14:03 +0200
Subject: [PATCH 3/6] Users can set a config option
clamshell_default_lid_action to set their desired option when clamshell is
not engaged.
---
app/Helpers/ClamshellModeControl.cs | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs
index 89fdf00b..0210dda7 100644
--- a/app/Helpers/ClamshellModeControl.cs
+++ b/app/Helpers/ClamshellModeControl.cs
@@ -62,7 +62,7 @@ namespace GHelper.Helpers
}
public static void DisableClamshellMode()
{
- PowerNative.SetLidAction(1, true);
+ PowerNative.SetLidAction(GetDefaultLidAction(), true);
Logger.WriteLine("Disengaging Clamshell Mode");
}
@@ -89,5 +89,15 @@ namespace GHelper.Helpers
if (IsClamshellEnabled())
ToggleLidAction();
}
+
+ //Power users can change that setting.
+ //0 = Do nothing
+ //1 = Sleep (default)
+ //2 = Hibernate
+ //3 = Shutdown
+ private static int GetDefaultLidAction()
+ {
+ return AppConfig.Get("clamshell_default_lid_action", 1);
+ }
}
}
From e16a50f1f2677cfc401accb883e49229000257b7 Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Wed, 26 Jul 2023 21:16:30 +0200
Subject: [PATCH 4/6] Safeguard to prevent users from choosing invalid options.
---
app/Helpers/ClamshellModeControl.cs | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs
index 0210dda7..539b516c 100644
--- a/app/Helpers/ClamshellModeControl.cs
+++ b/app/Helpers/ClamshellModeControl.cs
@@ -97,7 +97,14 @@ namespace GHelper.Helpers
//3 = Shutdown
private static int GetDefaultLidAction()
{
- return AppConfig.Get("clamshell_default_lid_action", 1);
+ int val = AppConfig.Get("clamshell_default_lid_action", 1);
+
+ if (val < 0 || val > 3)
+ {
+ val = 1;
+ }
+
+ return val;
}
}
}
From cff2c9af0b7337f22f0cc6e2f9f366d53ccb85dd Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Wed, 26 Jul 2023 23:15:28 +0200
Subject: [PATCH 5/6] Save lid action to config file during startup if user has
set it to hibernate or shutdown.
---
app/Helpers/ClamshellModeControl.cs | 22 ++++++++++++++++++++++
app/Mode/PowerNative.cs | 22 ++++++++++++++++++++++
2 files changed, 44 insertions(+)
diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs
index 539b516c..9bc02461 100644
--- a/app/Helpers/ClamshellModeControl.cs
+++ b/app/Helpers/ClamshellModeControl.cs
@@ -6,6 +6,13 @@ namespace GHelper.Helpers
{
internal class ClamshellModeControl
{
+
+ public ClamshellModeControl()
+ {
+ //Save current setting if hibernate or shutdown to prevent reverting the user set option.
+ CheckAndSaveLidAction();
+ }
+
public bool IsExternalDisplayConnected()
{
var devices = ScreenInterrogatory.GetAllDevices().ToArray();
@@ -90,6 +97,21 @@ namespace GHelper.Helpers
ToggleLidAction();
}
+ private static int CheckAndSaveLidAction()
+ {
+ int val = PowerNative.GetLidAction(true);
+ //If it is 0 then it is likely already set by clamshell mdoe
+ //If 0 was set by the user, then why do they even use clamshell mode?
+ //We only care about hibernate or shutdown setting here
+ if (val == 2 || val == 3)
+ {
+ AppConfig.Set("clamshell_default_lid_action", val);
+ return val;
+ }
+
+ return 1;
+ }
+
//Power users can change that setting.
//0 = Do nothing
//1 = Sleep (default)
diff --git a/app/Mode/PowerNative.cs b/app/Mode/PowerNative.cs
index 06a65bb2..ae70ee60 100644
--- a/app/Mode/PowerNative.cs
+++ b/app/Mode/PowerNative.cs
@@ -167,6 +167,28 @@ namespace GHelper.Mode
}
}
+ public static int GetLidAction(bool ac)
+ {
+ Guid activeSchemeGuid = GetActiveScheme();
+
+ IntPtr activeIndex;
+ if (ac)
+ PowerReadACValueIndex(IntPtr.Zero,
+ activeSchemeGuid,
+ GUID_SYSTEM_BUTTON_SUBGROUP,
+ GUID_LIDACTION, out activeIndex);
+
+ else
+ PowerReadDCValueIndex(IntPtr.Zero,
+ activeSchemeGuid,
+ GUID_SYSTEM_BUTTON_SUBGROUP,
+ GUID_LIDACTION, out activeIndex);
+
+
+ return activeIndex.ToInt32();
+ }
+
+
public static void SetLidAction(int action, bool acOnly = false)
{
/**
From dfe4bebe58afc104f3b0153e00f0ab9af9238c83 Mon Sep 17 00:00:00 2001
From: IceStormNG
Date: Wed, 26 Jul 2023 23:19:36 +0200
Subject: [PATCH 6/6] Only write the setting if it does not exist yet.
---
app/Helpers/ClamshellModeControl.cs | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/app/Helpers/ClamshellModeControl.cs b/app/Helpers/ClamshellModeControl.cs
index 9bc02461..b5c39831 100644
--- a/app/Helpers/ClamshellModeControl.cs
+++ b/app/Helpers/ClamshellModeControl.cs
@@ -99,6 +99,12 @@ namespace GHelper.Helpers
private static int CheckAndSaveLidAction()
{
+ if (AppConfig.Get("clamshell_default_lid_action", -1) != -1)
+ {
+ //Seting was alredy set. Do not touch it
+ return AppConfig.Get("clamshell_default_lid_action", -1);
+ }
+
int val = PowerNative.GetLidAction(true);
//If it is 0 then it is likely already set by clamshell mdoe
//If 0 was set by the user, then why do they even use clamshell mode?