aboutsummaryrefslogtreecommitdiffstats
path: root/src/os/macos.rs
diff options
context:
space:
mode:
authorJohan Sköld <johan@skold.cc>2016-01-16 15:12:21 -0800
committerJohan Sköld <johan@skold.cc>2016-01-17 01:02:27 -0800
commitc71b14afb9709aef36477a3eab0a816a3f972cd8 (patch)
tree8d8544fcf14fcff684e909e2d2850641c56e159c /src/os/macos.rs
parent3e0f6adec42428b42fded2e4f5d659b5e6d21358 (diff)
downloadglutin-c71b14afb9709aef36477a3eab0a816a3f972cd8.tar.gz
glutin-c71b14afb9709aef36477a3eab0a816a3f972cd8.zip
Adding os::macos.
Also implements platform_window() for cocoa.
Diffstat (limited to 'src/os/macos.rs')
-rw-r--r--src/os/macos.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/os/macos.rs b/src/os/macos.rs
new file mode 100644
index 0000000..16ffe33
--- /dev/null
+++ b/src/os/macos.rs
@@ -0,0 +1,19 @@
+#![cfg(target_os = "macos")]
+
+use std::os::raw::c_void;
+use Window;
+
+/// Additional methods on `Window` that are specific to MacOS.
+pub trait WindowExt {
+ /// Returns a pointer to the cocoa `NSWindow` that is used by this window.
+ ///
+ /// The pointer will become invalid when the glutin `Window` is destroyed.
+ fn get_nswindow(&self) -> *mut c_void;
+}
+
+impl WindowExt for Window {
+ #[inline]
+ fn get_nswindow(&self) -> *mut c_void {
+ self.window.platform_window() as *mut c_void
+ }
+}