From 47d9a7f1a6ded7bfe549c6c39525767eaa6ff87a Mon Sep 17 00:00:00 2001 From: Aceeri Date: Tue, 29 Dec 2015 15:47:04 -0800 Subject: Support for side buttons on mouse --- src/api/win32/callback.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'src') diff --git a/src/api/win32/callback.rs b/src/api/win32/callback.rs index d879da5..0215c9f 100644 --- a/src/api/win32/callback.rs +++ b/src/api/win32/callback.rs @@ -212,6 +212,24 @@ pub unsafe extern "system" fn callback(window: winapi::HWND, msg: winapi::UINT, 0 }, + winapi::WM_XBUTTONDOWN => { + use events::Event::MouseInput; + use events::MouseButton::Other; + use events::ElementState::Pressed; + let xbutton = winapi::HIWORD(wparam as winapi::DWORD) as winapi::c_int; // waiting on PR for winapi to add GET_XBUTTON_WPARAM + send_event(window, MouseInput(Pressed, Other(xbutton as u8))); + 0 + }, + + winapi::WM_XBUTTONUP => { + use events::Event::MouseInput; + use events::MouseButton::Other; + use events::ElementState::Released; + let xbutton = winapi::HIWORD(wparam as winapi::DWORD) as winapi::c_int; + send_event(window, MouseInput(Released, Other(xbutton as u8))); + 0 + }, + winapi::WM_INPUT => { let mut data: winapi::RAWINPUT = mem::uninitialized(); let mut data_size = mem::size_of::() as winapi::UINT; -- cgit v1.2.3