mirror of
https://github.com/jkocon/g-helper.git
synced 2026-02-23 13:00:52 +01:00
Merge branch 'main' into AllyTDP
This commit is contained in:
@@ -59,18 +59,6 @@ namespace GHelper.AnimeMatrix
|
|||||||
if (deviceSlash is not null) SetSlash(wakeUp);
|
if (deviceSlash is not null) SetSlash(wakeUp);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetLidMode(bool force = false)
|
|
||||||
{
|
|
||||||
bool matrixLid = AppConfig.Is("matrix_lid");
|
|
||||||
if (matrixLid || force)
|
|
||||||
{
|
|
||||||
Logger.WriteLine($"Matrix LidClosed: {lidClose}");
|
|
||||||
if (deviceSlash is not null) deviceSlash.SetLidMode(matrixLid);
|
|
||||||
SetDevice(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public void SetSlash(bool wakeUp = false)
|
public void SetSlash(bool wakeUp = false)
|
||||||
{
|
{
|
||||||
if (deviceSlash is null) return;
|
if (deviceSlash is null) return;
|
||||||
@@ -110,16 +98,44 @@ namespace GHelper.AnimeMatrix
|
|||||||
}
|
}
|
||||||
|
|
||||||
deviceSlash.Init();
|
deviceSlash.Init();
|
||||||
deviceSlash.SetMode((SlashMode)running);
|
|
||||||
deviceSlash.SetOptions(true, brightness, inteval);
|
switch ((SlashMode)running)
|
||||||
deviceSlash.Save();
|
{
|
||||||
|
case SlashMode.Static:
|
||||||
|
deviceSlash.SetStatic();
|
||||||
|
deviceSlash.Save();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
deviceSlash.SetMode((SlashMode)running);
|
||||||
|
deviceSlash.SetOptions(true, brightness, inteval);
|
||||||
|
deviceSlash.Save();
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SetLidMode(bool force = false)
|
||||||
|
{
|
||||||
|
bool matrixLid = AppConfig.Is("matrix_lid");
|
||||||
|
if (deviceSlash is not null) deviceSlash.SetLidMode(matrixLid);
|
||||||
|
|
||||||
|
if (matrixLid || force)
|
||||||
|
{
|
||||||
|
Logger.WriteLine($"Matrix LidClosed: {lidClose}");
|
||||||
|
SetDevice(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void SetBatteryAuto()
|
public void SetBatteryAuto()
|
||||||
{
|
{
|
||||||
if (deviceSlash is not null) deviceSlash.SetBatterySaver(AppConfig.Is("matrix_auto"));
|
if (deviceSlash is not null)
|
||||||
|
{
|
||||||
|
bool auto = AppConfig.Is("matrix_auto");
|
||||||
|
deviceSlash.SetBatterySaver(auto);
|
||||||
|
if (!auto) SetSlash();
|
||||||
|
}
|
||||||
|
|
||||||
if (deviceMatrix is not null) SetMatrix();
|
if (deviceMatrix is not null) SetMatrix();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,8 @@ namespace GHelper.AnimeMatrix
|
|||||||
Ramp,
|
Ramp,
|
||||||
GameOver,
|
GameOver,
|
||||||
Start,
|
Start,
|
||||||
Buzzer
|
Buzzer,
|
||||||
|
Static
|
||||||
}
|
}
|
||||||
|
|
||||||
internal class SlashPacket : Packet
|
internal class SlashPacket : Packet
|
||||||
@@ -53,6 +54,7 @@ namespace GHelper.AnimeMatrix
|
|||||||
{ SlashMode.GameOver, "Game Over"},
|
{ SlashMode.GameOver, "Game Over"},
|
||||||
{ SlashMode.Start, "Start"},
|
{ SlashMode.Start, "Start"},
|
||||||
{ SlashMode.Buzzer, "Buzzer"},
|
{ SlashMode.Buzzer, "Buzzer"},
|
||||||
|
{ SlashMode.Static, "Static"},
|
||||||
};
|
};
|
||||||
|
|
||||||
private static Dictionary<SlashMode, byte> modeCodes = new Dictionary<SlashMode, byte>
|
private static Dictionary<SlashMode, byte> modeCodes = new Dictionary<SlashMode, byte>
|
||||||
@@ -115,6 +117,12 @@ namespace GHelper.AnimeMatrix
|
|||||||
Set(Packet<SlashPacket>(0xD3, 0x04, 0x00, 0x0C, 0x01, modeByte, 0x02, 0x19, 0x03, 0x13, 0x04, 0x11, 0x05, 0x12, 0x06, 0x13), "SlashMode");
|
Set(Packet<SlashPacket>(0xD3, 0x04, 0x00, 0x0C, 0x01, modeByte, 0x02, 0x19, 0x03, 0x13, 0x04, 0x11, 0x05, 0x12, 0x06, 0x13), "SlashMode");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void SetStatic()
|
||||||
|
{
|
||||||
|
Set(Packet<SlashPacket>(0xD3, 0x00, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF), "StaticWhite");
|
||||||
|
Set(Packet<SlashPacket>(0xD3, 0x00, 0x00, 0x01, 0xAC), "Static");
|
||||||
|
}
|
||||||
|
|
||||||
public void SetOptions(bool status, int brightness = 0, int interval = 0)
|
public void SetOptions(bool status, int brightness = 0, int interval = 0)
|
||||||
{
|
{
|
||||||
byte brightnessByte = (byte)(brightness * 85.333);
|
byte brightnessByte = (byte)(brightness * 85.333);
|
||||||
|
|||||||
@@ -404,9 +404,14 @@ public static class AppConfig
|
|||||||
return ContainsModel("GA503") || IsSlash();
|
return ContainsModel("GA503") || IsSlash();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static bool IsInvertedFNLock()
|
||||||
|
{
|
||||||
|
return ContainsModel("M140");
|
||||||
|
}
|
||||||
|
|
||||||
public static bool IsOLED()
|
public static bool IsOLED()
|
||||||
{
|
{
|
||||||
return ContainsModel("OLED") || IsSlash() || ContainsModel("M7600") || ContainsModel("UX64") || ContainsModel("UX34") || ContainsModel("UX53") || ContainsModel("K360") || ContainsModel("X150") || ContainsModel("M350") || ContainsModel("K650") || ContainsModel("UM53") || ContainsModel("K660") || ContainsModel("UX84") || ContainsModel("M650") || ContainsModel("K340") || ContainsModel("K350");
|
return ContainsModel("OLED") || IsSlash() || ContainsModel("M7600") || ContainsModel("UX64") || ContainsModel("UX34") || ContainsModel("UX53") || ContainsModel("K360") || ContainsModel("X150") || ContainsModel("M350") || ContainsModel("K650") || ContainsModel("UM53") || ContainsModel("K660") || ContainsModel("UX84") || ContainsModel("M650") || ContainsModel("K340") || ContainsModel("K350") || ContainsModel("M140");
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool IsNoOverdrive()
|
public static bool IsNoOverdrive()
|
||||||
@@ -426,7 +431,7 @@ public static class AppConfig
|
|||||||
|
|
||||||
public static bool IsStrixLimitedRGB()
|
public static bool IsStrixLimitedRGB()
|
||||||
{
|
{
|
||||||
return (ContainsModel("G614JV") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM") || ContainsModel("G531G")) && !Is("per_key_rgb");
|
return (ContainsModel("G614JV_") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM") || ContainsModel("G531G")) && !Is("per_key_rgb");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -15,7 +15,7 @@
|
|||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
||||||
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
||||||
<AssemblyVersion>0.166</AssemblyVersion>
|
<AssemblyVersion>0.167</AssemblyVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
|
|||||||
@@ -85,7 +85,8 @@ namespace GHelper.Input
|
|||||||
|
|
||||||
InitBacklightTimer();
|
InitBacklightTimer();
|
||||||
|
|
||||||
if (AppConfig.IsVivoZenbook()) Program.acpi.DeviceSet(AsusACPI.FnLock, AppConfig.Is("fn_lock") ? 1 : 0, "FnLock");
|
if (AppConfig.IsVivoZenbook())
|
||||||
|
Program.acpi.DeviceSet(AsusACPI.FnLock, AppConfig.Is("fn_lock") ^ AppConfig.IsInvertedFNLock() ? 1 : 0, "FnLock");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -585,17 +586,17 @@ namespace GHelper.Input
|
|||||||
|
|
||||||
public static void ToggleFnLock()
|
public static void ToggleFnLock()
|
||||||
{
|
{
|
||||||
int fnLock = AppConfig.Is("fn_lock") ? 0 : 1;
|
bool fnLock = !AppConfig.Is("fn_lock");
|
||||||
AppConfig.Set("fn_lock", fnLock);
|
AppConfig.Set("fn_lock", fnLock ? 1 : 0);
|
||||||
|
|
||||||
if (AppConfig.IsVivoZenbook())
|
if (AppConfig.IsVivoZenbook())
|
||||||
Program.acpi.DeviceSet(AsusACPI.FnLock, fnLock == 1 ? 1 : 0, "FnLock");
|
Program.acpi.DeviceSet(AsusACPI.FnLock, fnLock ^ AppConfig.IsInvertedFNLock() ? 1 : 0, "FnLock");
|
||||||
else
|
else
|
||||||
Program.settingsForm.BeginInvoke(Program.inputDispatcher.RegisterKeys);
|
Program.settingsForm.BeginInvoke(Program.inputDispatcher.RegisterKeys);
|
||||||
|
|
||||||
Program.settingsForm.BeginInvoke(Program.settingsForm.VisualiseFnLock);
|
Program.settingsForm.BeginInvoke(Program.settingsForm.VisualiseFnLock);
|
||||||
|
|
||||||
Program.toast.RunToast(fnLock == 1 ? Properties.Strings.FnLockOn : Properties.Strings.FnLockOff, ToastIcon.FnLock);
|
Program.toast.RunToast(fnLock ? Properties.Strings.FnLockOn : Properties.Strings.FnLockOff, ToastIcon.FnLock);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void TabletMode()
|
public static void TabletMode()
|
||||||
|
|||||||
@@ -507,7 +507,7 @@
|
|||||||
<value>亮度</value>
|
<value>亮度</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="LockScreen" xml:space="preserve">
|
<data name="LockScreen" xml:space="preserve">
|
||||||
<value>Lock Screen</value>
|
<value>鎖定螢幕</value>
|
||||||
</data>
|
</data>
|
||||||
<data name="Logo" xml:space="preserve">
|
<data name="Logo" xml:space="preserve">
|
||||||
<value>Logo</value>
|
<value>Logo</value>
|
||||||
|
|||||||
Reference in New Issue
Block a user