From 520cf171b6bd67c781f5dbe57e9b01ca05187860 Mon Sep 17 00:00:00 2001 From: cxl Date: Mon, 8 May 2017 14:16:25 +0000 Subject: [PATCH] CtrlLib: Now using SetProcessDpiAwareness when available git-svn-id: svn://ultimatepp.org/upp/trunk@11058 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/CtrlLib/ChWin32.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/uppsrc/CtrlLib/ChWin32.cpp b/uppsrc/CtrlLib/ChWin32.cpp index 04759ae29..173ae463f 100644 --- a/uppsrc/CtrlLib/ChWin32.cpp +++ b/uppsrc/CtrlLib/ChWin32.cpp @@ -596,10 +596,17 @@ void ChSysInit() ChReset(); XpClear(); - BOOL (STDAPICALLTYPE * SetProcessDPIAware)(void); - DllFn(SetProcessDPIAware, "User32.dll", "SetProcessDPIAware"); - if(SetProcessDPIAware && Ctrl::IsUHDEnabled()) - (*SetProcessDPIAware)(); + + HRESULT (STDAPICALLTYPE *SetProcessDpiAwareness)(int); + DllFn(SetProcessDpiAwareness, "Shcore.dll", "SetProcessDpiAwareness"); + if(SetProcessDpiAwareness) + SetProcessDpiAwareness(1); + else { + BOOL (STDAPICALLTYPE * SetProcessDPIAware)(void); + DllFn(SetProcessDPIAware, "User32.dll", "SetProcessDPIAware"); + if(SetProcessDPIAware && Ctrl::IsUHDEnabled()) + (*SetProcessDPIAware)(); + } NONCLIENTMETRICS ncm; #if (WINVER >= 0x0600 && !defined(__MINGW32_VERSION)) ncm.cbSize = sizeof(ncm) - sizeof(ncm.iPaddedBorderWidth); // WinXP does not like it...