Add a bemenu control mode to access bemenu control with buttons
Signed-off-by: Stacy Harper <contact@stacyharper.net> Signed-off-by: Maarten van Gompel <proycon@anaproy.nl>
This commit is contained in:
parent
d430cce8ff
commit
f86cc46d03
6 changed files with 77 additions and 2 deletions
|
@ -61,11 +61,13 @@ exec sxmo_idle.sh start
|
|||
input 0:0:axp20x-pek {
|
||||
repeat_delay 200
|
||||
repeat_rate 15
|
||||
xkb_file /usr/share/sxmo/sway/xkb_mobile_normal_buttons
|
||||
}
|
||||
# Volume buttons
|
||||
input 1:1:1c21800.lradc {
|
||||
repeat_delay 200
|
||||
repeat_rate 15
|
||||
xkb_file /usr/share/sxmo/sway/xkb_mobile_normal_buttons
|
||||
}
|
||||
exec sxmo_multikey.sh clear
|
||||
|
||||
|
@ -84,6 +86,10 @@ exec sxmo_multikey.sh clear
|
|||
# Next workspace
|
||||
bindsym --input-device=1:1:1c21800.lradc XF86AudioLowerVolume exec sxmo_multikey.sh voldown "sxmo_inputhandler.sh voldown_one" "sxmo_inputhandler.sh voldown_two" "sxmo_inputhandler.sh voldown_three"
|
||||
|
||||
mode "menu" {
|
||||
bindsym --input-device=1:1:1c21800.lradc XF86AudioMute exec nothing # placeholder for "menu" mode
|
||||
}
|
||||
|
||||
# Kill focused window
|
||||
bindsym $mod+Shift+q kill
|
||||
|
||||
|
@ -252,3 +258,4 @@ exec sxmo_modemmonitortoggle.sh restart
|
|||
exec sxmo_notificationmonitor.sh
|
||||
exec mako
|
||||
exec sxmo_hooks.sh lisgdstart
|
||||
exec sxmo_menumode_toggler.sh
|
||||
|
|
22
configs/sway/xkb_mobile_movement_buttons
Normal file
22
configs/sway/xkb_mobile_movement_buttons
Normal file
|
@ -0,0 +1,22 @@
|
|||
xkb_keymap {
|
||||
xkb_keycodes "(unnamed)" {
|
||||
minimum = 122;
|
||||
maximum = 124;
|
||||
<VOL-> = 122;
|
||||
<VOL+> = 123;
|
||||
<POWR> = 124;
|
||||
alias <I122> = <VOL->;
|
||||
alias <I123> = <VOL+>;
|
||||
alias <I124> = <POWR>;
|
||||
};
|
||||
xkb_types "(unnamed)" {
|
||||
};
|
||||
xkb_compatibility "(unnamed)" {
|
||||
};
|
||||
xkb_symbols "(unnamed)" {
|
||||
name[group1]="Mobile Convenient Buttons";
|
||||
key <VOL-> { [ Down ] };
|
||||
key <VOL+> { [ Up ] };
|
||||
key <POWR> { [ Return ] };
|
||||
};
|
||||
};
|
22
configs/sway/xkb_mobile_normal_buttons
Normal file
22
configs/sway/xkb_mobile_normal_buttons
Normal file
|
@ -0,0 +1,22 @@
|
|||
xkb_keymap {
|
||||
xkb_keycodes "(unnamed)" {
|
||||
minimum = 122;
|
||||
maximum = 124;
|
||||
<VOL-> = 122;
|
||||
<VOL+> = 123;
|
||||
<POWR> = 124;
|
||||
alias <I122> = <VOL->;
|
||||
alias <I123> = <VOL+>;
|
||||
alias <I124> = <POWR>;
|
||||
};
|
||||
xkb_types "(unnamed)" {
|
||||
};
|
||||
xkb_compatibility "(unnamed)" {
|
||||
};
|
||||
xkb_symbols "(unnamed)" {
|
||||
name[group1]="Mobile Convenient Buttons";
|
||||
key <VOL-> { [ XF86AudioLowerVolume ] };
|
||||
key <VOL+> { [ XF86AudioRaiseVolume ] };
|
||||
key <POWR> { [ XF86PowerOff ] };
|
||||
};
|
||||
};
|
|
@ -28,7 +28,11 @@ esac > /dev/null
|
|||
|
||||
case "$(sxmo_wm.sh)" in
|
||||
sway)
|
||||
exec bemenu --scrollbar autohide -s -n -w -c -l "$(sxmo_rotate.sh isrotated > /dev/null && printf 8 || printf 15)" "$@"
|
||||
swaymsg mode menu -q # disable default button inputs
|
||||
bemenu --scrollbar autohide -s -n -w -c -l "$(sxmo_rotate.sh isrotated > /dev/null && printf 8 || printf 15)" "$@"
|
||||
returned=$?
|
||||
swaymsg mode default -q
|
||||
exit "$returned"
|
||||
;;
|
||||
xorg|dwm)
|
||||
if sxmo_keyboard.sh isopen; then
|
||||
|
|
|
@ -289,7 +289,7 @@ case "$ACTION" in
|
|||
exit 0
|
||||
;;
|
||||
"bottomleftcorner")
|
||||
lock_screen
|
||||
sxmo_dmenu.sh close && lock_screen
|
||||
exit 0
|
||||
;;
|
||||
"bottomrightcorner")
|
||||
|
|
20
scripts/core/sxmo_menumode_toggler.sh
Normal file
20
scripts/core/sxmo_menumode_toggler.sh
Normal file
|
@ -0,0 +1,20 @@
|
|||
#!/bin/sh
|
||||
|
||||
inputs="
|
||||
1:1:1c21800.lradc
|
||||
0:0:axp20x-pek
|
||||
"
|
||||
|
||||
setup_xkb() {
|
||||
for input in $inputs; do
|
||||
swaymsg input "$input" xkb_file "$1"
|
||||
done
|
||||
}
|
||||
|
||||
swaymsg -t subscribe -m "['mode']" | while read -r message; do
|
||||
if printf %s "$message" | grep -q menu; then
|
||||
setup_xkb /usr/share/sxmo/sway/xkb_mobile_movement_buttons
|
||||
else
|
||||
setup_xkb /usr/share/sxmo/sway/xkb_mobile_normal_buttons
|
||||
fi
|
||||
done
|
Loading…
Add table
Add a link
Reference in a new issue