| 1 | |
| 2 | |
| 3 | |
| 4 | |
| 5 | |
| 6 | |
| 7 | A_2160=600 |
| 8 | B_2160=600 |
| 9 | A_1600=400 |
| 10 | B_1600=400 |
| 11 | A_1440=400 |
| 12 | B_1440=400 |
| 13 | A_1080=200 |
| 14 | B_1080=200 |
| 15 | A_720=50 |
| 16 | B_720=50 |
| 17 | |
| 18 | |
| 19 | if pgrep -x "wlogout" > /dev/null; then |
| 20 | pkill -x "wlogout" |
| 21 | exit 0 |
| 22 | fi |
| 23 | |
| 24 | |
| 25 | resolution=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .height / .scale' | awk -F'.' '{print $1}') |
| 26 | hypr_scale=$(hyprctl -j monitors | jq -r '.[] | select(.focused==true) | .scale') |
| 27 | |
| 28 | |
| 29 | if ((resolution >= 2160)); then |
| 30 | T_val=$(awk "BEGIN {printf \"%.0f\", $A_2160 * 2160 * $hypr_scale / $resolution}") |
| 31 | B_val=$(awk "BEGIN {printf \"%.0f\", $B_2160 * 2160 * $hypr_scale / $resolution}") |
| 32 | echo "Setting parameters for resolution >= 4k" |
| 33 | wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & |
| 34 | elif ((resolution >= 1600 && resolution < 2160)); then |
| 35 | T_val=$(awk "BEGIN {printf \"%.0f\", $A_1600 * 1600 * $hypr_scale / $resolution}") |
| 36 | B_val=$(awk "BEGIN {printf \"%.0f\", $B_1600 * 1600 * $hypr_scale / $resolution}") |
| 37 | echo "Setting parameters for resolution >= 2.5k and < 4k" |
| 38 | wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & |
| 39 | elif ((resolution >= 1440 && resolution < 1600)); then |
| 40 | T_val=$(awk "BEGIN {printf \"%.0f\", $A_1440 * 1440 * $hypr_scale / $resolution}") |
| 41 | B_val=$(awk "BEGIN {printf \"%.0f\", $B_1440 * 1440 * $hypr_scale / $resolution}") |
| 42 | echo "Setting parameters for resolution >= 2k and < 2.5k" |
| 43 | wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & |
| 44 | elif ((resolution >= 1080 && resolution < 1440)); then |
| 45 | T_val=$(awk "BEGIN {printf \"%.0f\", $A_1080 * 1080 * $hypr_scale / $resolution}") |
| 46 | B_val=$(awk "BEGIN {printf \"%.0f\", $B_1080 * 1080 * $hypr_scale / $resolution}") |
| 47 | echo "Setting parameters for resolution >= 1080p and < 2k" |
| 48 | wlogout --protocol layer-shell -b 6 -T $T_val -B $B_val & |
| 49 | elif ((resolution >= 720 && resolution < 1080)); then |
| 50 | T_val=$(awk "BEGIN {printf \"%.0f\", $A_720 * 720 * $hypr_scale / $resolution}") |
| 51 | B_val=$(awk "BEGIN {printf \"%.0f\", $B_720 * 720 * $hypr_scale / $resolution}") |
| 52 | echo "Setting parameters for resolution >= 720p and < 1080p" |
| 53 | wlogout --protocol layer-shell -b 3 -T $T_val -B $B_val & |
| 54 | else |
| 55 | echo "Setting default parameters" |
| 56 | wlogout & |
| 57 | fi |