diff options
author | Philipp Hemmelmayr <fips.hem@gmail.com> | 2019-01-05 18:45:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-05 18:45:35 +0100 |
commit | e26ff2d2f9b061f6cf35a01b1b97f715acb0e729 (patch) | |
tree | 84598aeb01db8e38e0107d4ea4381da50a8816a1 /betterlockscreen | |
parent | 982baa0aef7c249ecf74985f273dbdb86a347c32 (diff) | |
parent | 5a2fbbadddfa5cfe557901efb62385f6c85e270f (diff) |
Merge pull request #86 from obynio/master
Add support for HiDPI screens
Diffstat (limited to 'betterlockscreen')
-rwxr-xr-x | betterlockscreen | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/betterlockscreen b/betterlockscreen index d9f90af..be67bd0 100755 --- a/betterlockscreen +++ b/betterlockscreen @@ -120,6 +120,24 @@ lockselect() { postlock } +logical_px() { + # get dpi value from xrdb + local DPI=$(xrdb -query | awk '/Xft.dpi/ {print $2}') + + # return the default value if no DPI is set + if [ -z "$DPI" ]; then + echo $1 + else + local SCALE=$(echo "scale=2; $DPI / 96.0" | bc) + + # check if scaling the value is worthy + if [ $(echo "$SCALE > 1.25" | bc -l) -eq 0 ]; then + echo $1 + else + echo "$SCALE * $1 / 1" | bc + fi + fi +} update() { # use @@ -132,9 +150,9 @@ update() { SR=$(xrandr --query | grep ' connected' | grep -o '[0-9][0-9]*x[0-9][0-9]*[^ ]*') for RES in $SR; do SRA=(${RES//[x+]/ }) - CX=$((${SRA[2]} + 25)) - CY=$((${SRA[1]} - 30)) - rectangles+="rectangle $CX,$CY $((CX+300)),$((CY-80)) " + CX=$((${SRA[2]} + $(logical_px 25))) + CY=$((${SRA[1]} - $(logical_px 30))) + rectangles+="rectangle $CX,$CY $((CX+$(logical_px 300))),$((CY-$(logical_px 80))) " done # User supplied Image |