diff options
| -rw-r--r-- | dome_key_map.h | 7 | ||||
| -rw-r--r-- | src/ffi.rs | 3 | ||||
| -rw-r--r-- | src/map.rs | 1 |
3 files changed, 9 insertions, 2 deletions
diff --git a/dome_key_map.h b/dome_key_map.h index 6748e3b..e1df9e5 100644 --- a/dome_key_map.h +++ b/dome_key_map.h @@ -13,6 +13,11 @@ typedef enum { HeadphoneButton_Down, } HeadphoneButton; +typedef enum { + PlayAudio_Yes, + PlayAudio_No, +} PlayAudio; + typedef struct State State; typedef struct { @@ -46,7 +51,7 @@ void dome_key_logger_init(void); Config *dome_key_parse_args(const char *const *args, size_t length, Config *config_ptr); -void dome_key_run_key_action(State *state, Trigger trigger); +void dome_key_run_key_action(State *state, Trigger trigger, PlayAudio play_audio); void dome_key_state_free(State *ptr); @@ -90,6 +90,7 @@ pub extern "C" fn dome_key_state_load_map_group(ptr: *mut State) { pub extern "C" fn dome_key_run_key_action( state: *mut State, trigger: Trigger, + play_audio: PlayAudio, ) { let trigger = unsafe { assert!(!trigger.buttons.is_null()); @@ -102,7 +103,7 @@ pub extern "C" fn dome_key_run_key_action( &mut *state }; - run_key_action(&mut state, trigger, PlayAudio::No); + run_key_action(&mut state, trigger, play_audio); } #[no_mangle] @@ -6,6 +6,7 @@ use {Action, HeadphoneButton, MapAction, MapKind}; use ffi::State; use sounds; +#[repr(C)] pub enum PlayAudio { Yes, No, |
