Rework MouseWheel event and fix the values on win32
This commit is contained in:
parent
c752142e04
commit
d9f0d92584
4 changed files with 9 additions and 6 deletions
|
|
@ -275,7 +275,7 @@ impl<'a> Iterator for PollEventsIterator<'a> {
|
|||
self.window.delegate.state.pending_events.lock().unwrap().extend(events.into_iter());
|
||||
event
|
||||
},
|
||||
NSScrollWheel => { Some(MouseWheel(event.scrollingDeltaY() as i32)) },
|
||||
NSScrollWheel => { Some(MouseWheel(event.scrollingDeltaX() as f64, event.scrollingDeltaY() as f64)) },
|
||||
_ => { None },
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -114,8 +114,9 @@ pub unsafe extern "system" fn callback(window: winapi::HWND, msg: winapi::UINT,
|
|||
|
||||
let value = (wparam >> 16) as i16;
|
||||
let value = value as i32;
|
||||
let value = value as f64 / winapi::WHEEL_DELTA as f64;
|
||||
|
||||
send_event(window, MouseWheel(value));
|
||||
send_event(window, MouseWheel(0.0, value));
|
||||
|
||||
0
|
||||
},
|
||||
|
|
|
|||
|
|
@ -240,11 +240,11 @@ impl<'a> Iterator for PollEventsIterator<'a> {
|
|||
ffi::Button2 => Some(Middle),
|
||||
ffi::Button3 => Some(Right),
|
||||
ffi::Button4 => {
|
||||
self.window.pending_events.lock().unwrap().push_back(MouseWheel(1));
|
||||
self.window.pending_events.lock().unwrap().push_back(MouseWheel(0.0, 1.0));
|
||||
None
|
||||
}
|
||||
ffi::Button5 => {
|
||||
self.window.pending_events.lock().unwrap().push_back(MouseWheel(-1));
|
||||
self.window.pending_events.lock().unwrap().push_back(MouseWheel(0.0, -1.0));
|
||||
None
|
||||
}
|
||||
_ => None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue