aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cocoa_bridge.rs17
-rw-r--r--src/lib.rs2
2 files changed, 17 insertions, 2 deletions
diff --git a/src/cocoa_bridge.rs b/src/cocoa_bridge.rs
index 3ddacc9..d57e5ee 100644
--- a/src/cocoa_bridge.rs
+++ b/src/cocoa_bridge.rs
@@ -1,7 +1,7 @@
use cocoa::base::nil;
use cocoa::foundation::{NSArray, NSAutoreleasePool, NSDictionary};
-use MapGroup;
+use {HeadphoneButton, MapGroup, MapKind};
#[repr(C)]
struct renameMeMapGroup {
@@ -36,6 +36,21 @@ map <down> j";
// or run command (from Rust?)
// Somehow: switch mode inside Rust
+#[repr(C)]
+pub struct KeyActionResult<'a> {
+ pub action: Option<&'a [char]>,
+ pub kind: MapKind,
+}
+
+pub extern "C" fn run_key_action(
+ trigger: &[HeadphoneButton]
+) -> KeyActionResult {
+ KeyActionResult {
+ action: None,
+ kind: MapKind::Map,
+ }
+}
+
mod tests {
use super::*;
diff --git a/src/lib.rs b/src/lib.rs
index e6260ed..7fb0b92 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -6,4 +6,4 @@ extern crate combine;
mod cocoa_bridge;
mod parser;
-use parser::MapGroup;
+use parser::{HeadphoneButton, MapGroup, MapKind};