Fix clientedge

This commit is contained in:
Jade Macho 2024-03-16 21:37:50 +01:00
parent c5feafcb28
commit 07263f0ecc
Signed by: 0x0ade
GPG Key ID: E1960710FE4FBEEF
3 changed files with 7 additions and 6 deletions

View File

@ -44,15 +44,15 @@ public static class DXVKDWMHackModeExt
public static string ToHumanNameString(this DXVKDWMHackMode mode) => mode switch
{
DXVKDWMHackMode.Off => "Off",
DXVKDWMHackMode.UnsetPopup => "Best case: Disable WS_POPUP",
DXVKDWMHackMode.SetClientEdge => "Worst case: Enable WS_EX_CLIENTEDGE",
DXVKDWMHackMode.UnsetPopup => "Best: -WS_POPUP",
DXVKDWMHackMode.SetClientEdge => "Worst: +WS_EX_CLIENTEDGE",
_ => mode.ToString(),
};
public static string? ToHumanInfoString(this DXVKDWMHackMode mode) => mode switch
{
DXVKDWMHackMode.UnsetPopup => "Works best with NVIDIA GPUs.",
DXVKDWMHackMode.SetClientEdge => "Adds a 2 pixel border around the game.",
DXVKDWMHackMode.UnsetPopup => "Least intrusive option, doesn't work everywhere.\nWorks best with NVIDIA GPUs.",
DXVKDWMHackMode.SetClientEdge => "Extends the game window 1 pixel to the bottom.\nCauses problems in proper \"Full Screen\" mode!",
_ => null
};
}

View File

@ -108,6 +108,7 @@ public sealed unsafe class WndProcHook : IDisposable
GetMonitorInfo(monitor, &monitorInfo))
{
ncsize->rgrc[0] = monitorInfo.rcMonitor;
ncsize->rgrc[0].bottom += 1;
args.SuppressCall = true;
}

View File

@ -260,7 +260,7 @@ public sealed unsafe class Plugin : IDalamudPlugin
if (fullscreen)
{
if (mode >= DXVKDWMHackMode.UnsetPopup)
if (mode == DXVKDWMHackMode.UnsetPopup)
{
style &= ~WS.WS_POPUP;
}
@ -287,7 +287,7 @@ public sealed unsafe class Plugin : IDalamudPlugin
Service.PluginLog.Info($"NEWEXSTYLE: 0x{exstyle:X8}");
}
if (style != styleOrig || exstyle != exstyleOrig)
if (style != styleOrig || exstyle != exstyleOrig || _currentDXVKDWMHackMode != mode)
{
if (IsDebug)
{