sxmo: friendly format with which to define bonsai map
This commit is contained in:
parent
c7b065eed9
commit
96a63d0e89
|
@ -432,45 +432,34 @@ in
|
||||||
event_name = eventName;
|
event_name = eventName;
|
||||||
inherit transitions;
|
inherit transitions;
|
||||||
};
|
};
|
||||||
in [
|
friendlyToBonsai = { timeout ? null, trigger ? null, power_pressed ? {}, power_released ? {}, voldown_pressed ? {}, voldown_released ? {}, volup_pressed ? {}, volup_released ? {} }: [
|
||||||
# define mappings for 1, 2, or 3 repeat presses of each primary button
|
(lib.mkIf (timeout != null) (onIdle timeout))
|
||||||
(onEvent "power_pressed" [
|
(lib.mkIf (trigger != null) (doExec trigger))
|
||||||
(onIdle "powerbutton_three")
|
(lib.mkIf (power_pressed != {}) (onEvent "power_pressed" (friendlyToBonsai power_pressed)))
|
||||||
(onEvent "power_released" [
|
(lib.mkIf (power_released != {}) (onEvent "power_released" (friendlyToBonsai power_released)))
|
||||||
(onIdle "powerbutton_one")
|
(lib.mkIf (voldown_pressed != {}) (onEvent "voldown_pressed" (friendlyToBonsai voldown_pressed)))
|
||||||
(onEvent "power_released" [
|
(lib.mkIf (voldown_released != {}) (onEvent "voldown_released" (friendlyToBonsai voldown_released)))
|
||||||
(onIdle "powerbutton_two")
|
(lib.mkIf (volup_pressed != {}) (onEvent "volup_pressed" (friendlyToBonsai volup_pressed)))
|
||||||
(onEvent "power_released" [
|
(lib.mkIf (volup_released != {}) (onEvent "volup_released" (friendlyToBonsai volup_released)))
|
||||||
(doExec "powerbutton_three")
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
(onEvent "voldown_pressed" [
|
|
||||||
(onIdle "voldown_three")
|
|
||||||
(onEvent "voldown_released" [
|
|
||||||
(onIdle "voldown_one")
|
|
||||||
(onEvent "voldown_released" [
|
|
||||||
(onIdle "voldown_two")
|
|
||||||
(onEvent "voldown_released" [
|
|
||||||
(doExec "voldown_three")
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
(onEvent "volup_pressed" [
|
|
||||||
(onIdle "volup_three")
|
|
||||||
(onEvent "volup_released" [
|
|
||||||
(onIdle "volup_one")
|
|
||||||
(onEvent "volup_released" [
|
|
||||||
(onIdle "volup_two")
|
|
||||||
(onEvent "volup_released" [
|
|
||||||
(doExec "volup_three")
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
])
|
|
||||||
];
|
];
|
||||||
|
in friendlyToBonsai {
|
||||||
|
# map sequences of "events" to an argument to pass to sxmo_hook_inputhandler.sh
|
||||||
|
|
||||||
|
power_pressed.timeout = "powerbutton_three"; # hold/stuck state machine
|
||||||
|
power_pressed.power_released.timeout = "powerbutton_one";
|
||||||
|
power_pressed.power_released.power_released.timeout = "powerbutton_two";
|
||||||
|
power_pressed.power_released.power_released.power_released.trigger = "powerbutton_three";
|
||||||
|
|
||||||
|
voldown_pressed.timeout = "voldown_three"; # hold/stuck state machine
|
||||||
|
voldown_pressed.voldown_released.timeout = "voldown_one";
|
||||||
|
voldown_pressed.voldown_released.voldown_released.timeout = "voldown_two";
|
||||||
|
voldown_pressed.voldown_released.voldown_released.voldown_released.trigger = "voldown_three";
|
||||||
|
|
||||||
|
volup_pressed.timeout = "volup_three"; # hold/stuck state machine
|
||||||
|
volup_pressed.volup_released.timeout = "volup_one";
|
||||||
|
volup_pressed.volup_released.volup_released.timeout = "volup_two";
|
||||||
|
volup_pressed.volup_released.volup_released.volup_released.trigger = "volup_three";
|
||||||
|
};
|
||||||
|
|
||||||
# sxmo puts in /share/sxmo:
|
# sxmo puts in /share/sxmo:
|
||||||
# - profile.d/sxmo_init.sh
|
# - profile.d/sxmo_init.sh
|
||||||
|
|
Loading…
Reference in New Issue
Block a user