aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-10-31 11:35:09 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2021-02-24 14:49:48 +0100
commit620c54ef61999ab4736c269eff028b185cd44de6 (patch)
tree36436492ffa0d2548388e1eac4d678323bc0629b
parentMerge pull request #113 from zx2c4-forks/jd/arm64 (diff)
downloadwireguard-windows-pkg/walk-win.tar.xz
wireguard-windows-pkg/walk-win.zip
user32: do more faithful emulation of GetSystemMetricsForDpi for Win<10 on HiDPIpkg/walk-win
-rw-r--r--user32.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/user32.go b/user32.go
index fd5eb4e1..bc3f97fd 100644
--- a/user32.go
+++ b/user32.go
@@ -7,6 +7,7 @@
package win
import (
+ "math"
"syscall"
"unsafe"
@@ -2735,7 +2736,7 @@ func GetSystemMetrics(nIndex int32) int32 {
func GetSystemMetricsForDpi(nIndex int32, dpi uint32) int32 {
if getSystemMetricsForDpi.Find() != nil {
- return GetSystemMetrics(nIndex)
+ return int32(math.Round(float64(GetSystemMetrics(nIndex)) * float64(dpi) / float64(GetDpiForWindow(0))))
}
ret, _, _ := syscall.Syscall(getSystemMetricsForDpi.Addr(), 2,