aboutsummaryrefslogtreecommitdiffstats
path: root/src/key_code.rs
diff options
context:
space:
mode:
authorTeddy Wing2018-10-13 18:52:20 +0200
committerTeddy Wing2018-10-13 18:52:20 +0200
commite52d2d6f4df4bb6476077a722849644db59eda11 (patch)
treeed0255b7363f83aefff606119fb66cd62aad7c1d /src/key_code.rs
parentd5082eeca37a938e8aa90868cb7c5bae11386601 (diff)
downloaddome-key-map-e52d2d6f4df4bb6476077a722849644db59eda11.tar.bz2
Get rid of media key simulation code
Can't deal with segfaults any more. This code will be moved to Objective-C.
Diffstat (limited to 'src/key_code.rs')
-rw-r--r--src/key_code.rs120
1 files changed, 0 insertions, 120 deletions
diff --git a/src/key_code.rs b/src/key_code.rs
index 9e30dfc..8d77a2a 100644
--- a/src/key_code.rs
+++ b/src/key_code.rs
@@ -14,7 +14,6 @@ use core_graphics::event::{
CGKeyCode,
KeyCode,
};
-use foreign_types::{ForeignType, ForeignTypeRef};
// impl KeyCode {
// pub const RETURN: CGKeyCode = 0x24;
@@ -96,122 +95,3 @@ use foreign_types::{ForeignType, ForeignTypeRef};
// kVK_DownArrow = 0x7D,
// kVK_UpArrow = 0x7E
// };
-
-
-
- // unsafe fn otherEventWithType_location_modifierFlags_timestamp_windowNumber_context_subtype_data1_data2_(
- // _: Self,
- // eventType: NSEventType,
- // location: NSPoint,
- // modifierFlags: NSEventModifierFlags,
- // timestamp: NSTimeInterval,
- // windowNumber: NSInteger,
- // context: id /* (NSGraphicsContext *) */,
- // subtype: NSEventSubtype,
- // data1: NSInteger,
- // data2: NSInteger) -> id /* (NSEvent *) */
-
-
-// https://stackoverflow.com/questions/11045814/emulate-media-key-press-on-mac/11048135#11048135
-// https://stackoverflow.com/questions/10459085/cocoa-simulate-macbook-upper-keys-multimedia-keys/50574159#50574159
-unsafe fn press_play() {
- let NX_KEYTYPE_PLAY = 16;
- let code = NX_KEYTYPE_PLAY;
-
- // let key_down = NSEvent::otherEventWithType_location_modifierFlags_timestamp_windowNumber_context_subtype_data1_data2_(
- // nil,
- // NSSystemDefined,
- // NSPoint::new(0.0, 0.0),
- // // NSEventModifierFlags::NSDeviceIndependentModifierFlagsMask, // 0xa00 0xb00
- // // 0xa00,
- // // NSEventModifierFlags::empty(),
- // NSEventModifierFlags::from_bits(0xa00).unwrap(),
- // 0.0,
- // 0,
- // nil,
- // NSScreenChangedEventType,
- // (code << 16 as i32) | (0xa << 8 as i32),
- // -1
- // );
- // let event = key_down.CGEvent() as *mut CGEvent;
- // let event = &*event;
- // event.post(CGEventTapLocation::HID);
- //
- // let key_up = NSEvent::otherEventWithType_location_modifierFlags_timestamp_windowNumber_context_subtype_data1_data2_(
- // nil,
- // NSSystemDefined,
- // NSPoint::new(0.0, 0.0),
- // // NSEventModifierFlags::NSDeviceIndependentModifierFlagsMask,
- // // NSEventModifierFlags::empty(),
- // NSEventModifierFlags::from_bits(0xb00).unwrap(),
- // 0.0,
- // 0,
- // nil,
- // NSScreenChangedEventType,
- // (code << 16 as i32) | (0xb << 8 as i32),
- // -1
- // );
- // let event = key_up.CGEvent() as *mut CGEvent;
- // let event = &*event;
- // event.post(CGEventTapLocation::HID);
-
- let event: id = msg_send![class!(NSEvent), otherEventWithType:NSSystemDefined
- location:NSPoint::new(0.0, 0.0)
- modifierFlags:0xa00
- timestamp:0.0
- windowNumber:0
- context:nil
- subtype:NSScreenChangedEventType
- data1:(code << 16 as i32) | (0xa << 8 as i32)
- data2:-1];
-
- // let cg_event: *mut CGEvent = msg_send![event, CGEvent];
- // let n_cg_event = &*cg_event;
- // println!("{}", cg_event.as_ptr());
- // n_cg_event.post(CGEventTapLocation::HID);
- // println!("Failed");
-
- let cg_event_ref: CGEventRef = msg_send![event, CGEvent];
- // CGEventPost(CGEventTapLocation::HID, cg_event_ref);
- // let cg_event = CGEvent::from_ptr(cg_event_ref);
- println!("What");
- // let cg_event: CGEvent = cg_event_ref.to_owned(); // TODO: doesn't work
- // let handle: *mut $ctype = $clone($crate::ForeignTypeRef::as_ptr(self));
- // $crate::ForeignType::from_ptr(handle)
- let fucking_handle = CGEventRef::as_ptr(&cg_event_ref);
- let cg_event = CGEvent::from_ptr(fucking_handle);
- println!("Fuck");
- cg_event.post(CGEventTapLocation::HID); // fucking segfaults
- println!("Failed");
-
- // let event: id = msg_send![class!(NSEvent), otherEventWithType:NSSystemDefined
- // location:NSPoint::new(0.0, 0.0)
- // modifierFlags:0xb00
- // timestamp:0.0
- // windowNumber:0
- // context:nil
- // subtype:NSScreenChangedEventType
- // data1:(code << 16 as i32) | (0xb << 8 as i32)
- // data2:-1];
- //
- // // let cg_event: *mut CGEvent = msg_send![event, CGEvent];
- // // let cg_event = &*cg_event;
- // // cg_event.post(CGEventTapLocation::HID);
- // let cg_event_ref: CGEventRef = msg_send![event, CGEvent];
- // let fucking_handle = CGEventRef::as_ptr(&cg_event_ref);
- // let cg_event = CGEvent::from_ptr(fucking_handle);
- // cg_event.post(CGEventTapLocation::HID);
-}
-
-
-#[cfg(test)]
-mod tests {
-use super::*;
-
-#[test]
-fn send_media_key_event() {
- unsafe {
- press_play();
- }
-}
-}