summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Shumaker <lukeshu@datawire.io>2019-05-17 14:28:56 -0400
committerLuke Shumaker <lukeshu@datawire.io>2019-05-17 14:28:56 -0400
commit7685c49b1fef4f5eb9beeca1bf0bfe8ab2888d3f (patch)
tree09525c031f60a37801d37502d2c2a9d7472596a5
parenta76250e07dfcd0d35d837ac19fb7361e266ee6bd (diff)
get-dpi: DTRT for GDK-text; factor in Xft.dpi and GDK_SCALE
-rwxr-xr-x.local/bin/get-dpi22
1 files changed, 12 insertions, 10 deletions
diff --git a/.local/bin/get-dpi b/.local/bin/get-dpi
index b9979bd..3c9252a 100755
--- a/.local/bin/get-dpi
+++ b/.local/bin/get-dpi
@@ -9,19 +9,21 @@ calc() {
sanitize "$(bc <<<"scale=6; $1")"
}
-# GDK
-dpi=$(calc "$(sanitize "${GDK_SCALE:-1}") * 96")
-echo environment GDK-widget ${dpi}x${dpi}
-
-dpi=$(calc "$(sanitize "${GDK_DPI_SCALE:-1}") * 96")
-echo environment GDK-text ${dpi}x${dpi}
-
# Xft
dpi=$(xrdb -query|sed -n 's/^Xft\.dpi:\s*//p')
[[ -n "$dpi" ]] || dpi=96x96
-xdpi=$(sanitize "${dpi%%x*}")
-ydpi=$(sanitize "${dpi#*x}")
-echo X11-resources Xft ${xdpi}x${ydpi}
+xft_xdpi=$(sanitize "${dpi%%x*}")
+xft_ydpi=$(sanitize "${dpi#*x}")
+echo X11-resources Xft ${xft_xdpi}x${xft_ydpi}
+
+# GDK
+gdk_scale=$(sanitize "${GDK_SCALE:-1}")
+dpi=$(calc "${gdk_scale} * 96")
+echo environment GDK-widget ${dpi}x${dpi}
+
+gdk_dpi_scale=$(sanitize "${GDK_DPI_SCALE:-1}")
+dpi=$(calc "${gdk_scale} * ${gdk_dpi_scale} * ${xft_xdpi}")
+echo environment+X11-resources GDK-text ${dpi}x${dpi}
# RandR
(