1
1
Fork 0

Compare commits

..

2 commits

Author SHA1 Message Date
e5c0983fe7
left: set state at reload
Signed-off-by: Myned <dev@bjork.tech>
2024-09-17 10:37:53 -05:00
59aef55d50
hyprland: only tile office at launch
Signed-off-by: Myned <dev@bjork.tech>
2024-09-17 10:37:18 -05:00
3 changed files with 25 additions and 17 deletions

View file

@ -28,7 +28,7 @@ in {
"special:android, on-created-empty:${waydroid} app launch com.YoStarEN.Arknights" "special:android, on-created-empty:${waydroid} app launch com.YoStarEN.Arknights"
"special:music, on-created-empty:${youtube-music}" "special:music, on-created-empty:${youtube-music}"
"special:office, on-created-empty:${onlyoffice}" "special:office, on-created-empty:[tile] ${onlyoffice}"
"special:steam, on-created-empty:${steam}" "special:steam, on-created-empty:${steam}"
"special:terminal, on-created-empty:${kitty}" "special:terminal, on-created-empty:${kitty}"
"special:vm, on-created-empty:${pgrep} -x vm || ${virt-manager}" "special:vm, on-created-empty:${pgrep} -x vm || ${virt-manager}"
@ -209,7 +209,7 @@ in {
(tag.files ["size 1000 625"]) (tag.files ["size 1000 625"])
(tag.game ["fullscreen" "group barred" "idleinhibit always" "noborder" "noshadow" "renderunfocused" "workspace name:game"]) (tag.game ["fullscreen" "group barred" "idleinhibit always" "noborder" "noshadow" "renderunfocused" "workspace name:game"])
(tag.music ["tile" "workspace special:music"]) (tag.music ["tile" "workspace special:music"])
(tag.office ["tile" "workspace special:office"]) (tag.office ["workspace special:office"])
(tag.pip ["keepaspectratio" "move ${pip.x} ${pip.y}" "pin" "size ${pip.w} ${pip.h}"]) (tag.pip ["keepaspectratio" "move ${pip.x} ${pip.y}" "pin" "size ${pip.w} ${pip.h}"])
(tag.social ["group" "tile"]) (tag.social ["group" "tile"])
(tag.steam ["workspace special:steam"]) (tag.steam ["workspace special:steam"])

View file

@ -61,7 +61,7 @@ in {
# https://wiki.hyprland.org/Configuring/Keywords/#executing # https://wiki.hyprland.org/Configuring/Keywords/#executing
exec = [ exec = [
left # Left-handed at boot left # Set left-pawed state
"${systemctl} --user restart walker" "${systemctl} --user restart walker"
"${sleep} 2 && ${systemctl} --user restart waybar" "${sleep} 2 && ${systemctl} --user restart waybar"
]; ];

View file

@ -1,27 +1,35 @@
#! /usr/bin/env bash #! /usr/bin/env bash
# Toggle left-handed mouse # Toggle left-pawed mouse
#?? left DEVICE #?? left DEVICE
# BUG: New hyprctl syntax does not support per-device getoption # BUG: New hyprctl syntax does not support per-device getoption
# https://github.com/hyprwm/hyprlang/issues/43 # https://github.com/hyprwm/hyprlang/issues/43
# HACK: Condition based on file presence, requires creation at login to set state # HACK: Condition based on file presence, requires execution at reload to set state
#?? exec-once = left #?? exec = left
FILE=/tmp/left FILE="$HOME/.left"
if (("$#" == 0)); then # Set initial state
touch "$FILE" if [[ -f "$FILE" ]]; then
exit left=1
else
left=0
fi fi
if [[ -f "$FILE" ]]; then # If device argument, then toggle
hyprctl keyword "device[$1]:left_handed" false if (("$#" > 0)); then
hyprctl keyword "device[$1]:natural_scroll" false left=$((1 - "$left"))
rm --force "$FILE" fi
notify-send "> left" "Right-handed" --urgency low
else # Enforce state
if (("$left")); then
hyprctl keyword "device[$1]:left_handed" true hyprctl keyword "device[$1]:left_handed" true
hyprctl keyword "device[$1]:natural_scroll" true hyprctl keyword "device[$1]:natural_scroll" true
touch "$FILE" touch "$FILE"
notify-send "> left" "Left-handed" --urgency low notify-send "> left" "Left-pawed" --urgency low
else
hyprctl keyword "device[$1]:left_handed" false
hyprctl keyword "device[$1]:natural_scroll" false
rm --force "$FILE"
notify-send "> left" "Right-pawed" --urgency low
fi fi