winit-sonoma-fix/examples/grabbing.rs
2016-03-26 18:10:19 +01:00

42 lines
1.1 KiB
Rust

#[cfg(target_os = "android")]
#[macro_use]
extern crate android_glue;
extern crate winit;
use winit::{Event, ElementState};
#[cfg(target_os = "android")]
android_start!(main);
fn main() {
let window = winit::WindowBuilder::new().build().unwrap();
window.set_title("winit - Cursor grabbing test");
let mut grabbed = false;
for event in window.wait_events() {
match event {
Event::KeyboardInput(ElementState::Pressed, _, _) => {
if grabbed {
grabbed = false;
window.set_cursor_state(winit::CursorState::Normal)
.ok().expect("could not ungrab mouse cursor");
} else {
grabbed = true;
window.set_cursor_state(winit::CursorState::Grab)
.ok().expect("could not grab mouse cursor");
}
},
Event::Closed => break,
a @ Event::MouseMoved(_) => {
println!("{:?}", a);
},
_ => (),
}
}
}