From: <sv...@op...> - 2024-11-02 00:24:05
|
Author: sagamusix Date: Sat Nov 2 01:23:53 2024 New Revision: 22060 URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=22060 Log: [Imp] Add the possibility to disable enhanced GDI upscaling via hidden setting Display.UseGDIUpcaling. This may fix issues that in particular some older VST plugins may be having when this mode is enabled (https://bugs.openmpt.org/view.php?id=1524). Modified: trunk/OpenMPT/mptrack/Mptrack.cpp trunk/OpenMPT/mptrack/TrackerSettings.cpp trunk/OpenMPT/mptrack/TrackerSettings.h Modified: trunk/OpenMPT/mptrack/Mptrack.cpp ============================================================================== --- trunk/OpenMPT/mptrack/Mptrack.cpp Sat Nov 2 00:26:39 2024 (r22059) +++ trunk/OpenMPT/mptrack/Mptrack.cpp Sat Nov 2 01:23:53 2024 (r22060) @@ -1285,7 +1285,7 @@ // For Windows 10, Creators Update (1703) and newer { mpt::Library user32(mpt::LibraryPath::System(P_("user32"))); - if (user32.IsValid()) + if(user32.IsValid()) { enum MPT_DPI_AWARENESS_CONTEXT { @@ -1299,12 +1299,12 @@ PSETPROCESSDPIAWARENESSCONTEXT SetProcessDpiAwarenessContext = nullptr; if(user32.Bind(SetProcessDpiAwarenessContext, "SetProcessDpiAwarenessContext")) { - if (TrackerSettings::Instance().highResUI) + if(TrackerSettings::Instance().highResUI) { setDPI = (SetProcessDpiAwarenessContext(HANDLE(MPT_DPI_AWARENESS_CONTEXT_PER_MONITOR_AWARE_V2)) == TRUE); } else { - if (SetProcessDpiAwarenessContext(HANDLE(MPT_DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED)) == TRUE) + if(TrackerSettings::Instance().useGDIUpcaling && SetProcessDpiAwarenessContext(HANDLE(MPT_DPI_AWARENESS_CONTEXT_UNAWARE_GDISCALED)) == TRUE) setDPI = true; else setDPI = (SetProcessDpiAwarenessContext(HANDLE(MPT_DPI_AWARENESS_CONTEXT_UNAWARE)) == TRUE); Modified: trunk/OpenMPT/mptrack/TrackerSettings.cpp ============================================================================== --- trunk/OpenMPT/mptrack/TrackerSettings.cpp Sat Nov 2 00:26:39 2024 (r22059) +++ trunk/OpenMPT/mptrack/TrackerSettings.cpp Sat Nov 2 01:23:53 2024 (r22060) @@ -176,6 +176,7 @@ , m_ShowSplashScreen(conf, UL_("Display"), UL_("ShowSplashScreen"), true) , gbMdiMaximize(conf, UL_("Display"), UL_("MDIMaximize"), true) , highResUI(conf, UL_("Display"), UL_("HighResUI"), false) + , useGDIUpcaling(conf, UL_("Display"), UL_("UseGDIUpscaling"), true) , glTreeSplitRatio(conf, UL_("Display"), UL_("MDITreeRatio"), 128) , glTreeWindowWidth(conf, UL_("Display"), UL_("MDITreeWidth"), 160) , glGeneralWindowHeight(conf, UL_("Display"), UL_("MDIGeneralHeight"), 222) Modified: trunk/OpenMPT/mptrack/TrackerSettings.h ============================================================================== --- trunk/OpenMPT/mptrack/TrackerSettings.h Sat Nov 2 00:26:39 2024 (r22059) +++ trunk/OpenMPT/mptrack/TrackerSettings.h Sat Nov 2 01:23:53 2024 (r22060) @@ -669,6 +669,7 @@ Setting<bool> m_ShowSplashScreen; Setting<bool> gbMdiMaximize; Setting<bool> highResUI; + Setting<bool> useGDIUpcaling; Setting<LONG> glTreeSplitRatio; Setting<LONG> glTreeWindowWidth; Setting<LONG> glGeneralWindowHeight; |