1111use serde:: { Serialize , Deserialize } ;
1212use glutin:: {
1313 dpi:: { LogicalSize , PhysicalPosition } ,
14- event:: { self as glutin_event, WindowEvent , KeyboardInput } ,
14+ event:: { self as glutin_event, ElementState , KeyboardInput , VirtualKeyCode , WindowEvent } ,
1515} ;
1616
1717use crate :: Point ;
@@ -113,10 +113,10 @@ pub enum PressedState {
113113
114114impl PressedState {
115115 #[ cfg_attr( any( feature = "test" , test) , allow( dead_code) ) ]
116- fn from_state ( state : glutin_event :: ElementState ) -> PressedState {
116+ fn from_state ( state : ElementState ) -> PressedState {
117117 match state {
118- glutin_event :: ElementState :: Pressed => PressedState :: Pressed ,
119- glutin_event :: ElementState :: Released => PressedState :: Released ,
118+ ElementState :: Pressed => PressedState :: Pressed ,
119+ ElementState :: Released => PressedState :: Released ,
120120 }
121121 }
122122}
@@ -262,179 +262,123 @@ pub enum Key {
262262
263263impl Key {
264264 #[ cfg_attr( any( feature = "test" , test) , allow( dead_code) ) ]
265- fn from_keycode ( key : glutin_event:: VirtualKeyCode ) -> Option < Self > {
266- use glutin_event:: VirtualKeyCode :: * ;
265+ fn from_keycode ( key : VirtualKeyCode ) -> Option < Self > {
267266 Some ( match key {
268- Key1 => Key :: Num1 ,
269- Key2 => Key :: Num2 ,
270- Key3 => Key :: Num3 ,
271- Key4 => Key :: Num4 ,
272- Key5 => Key :: Num5 ,
273- Key6 => Key :: Num6 ,
274- Key7 => Key :: Num7 ,
275- Key8 => Key :: Num8 ,
276- Key9 => Key :: Num9 ,
277- Key0 => Key :: Num0 ,
278-
279- A => Key :: A ,
280- B => Key :: B ,
281- C => Key :: C ,
282- D => Key :: D ,
283- E => Key :: E ,
284- F => Key :: F ,
285- G => Key :: G ,
286- H => Key :: H ,
287- I => Key :: I ,
288- J => Key :: J ,
289- K => Key :: K ,
290- L => Key :: L ,
291- M => Key :: M ,
292- N => Key :: N ,
293- O => Key :: O ,
294- P => Key :: P ,
295- Q => Key :: Q ,
296- R => Key :: R ,
297- S => Key :: S ,
298- T => Key :: T ,
299- U => Key :: U ,
300- V => Key :: V ,
301- W => Key :: W ,
302- X => Key :: X ,
303- Y => Key :: Y ,
304- Z => Key :: Z ,
305-
306- Escape => Key :: Esc ,
307-
308- F1 => Key :: F1 ,
309- F2 => Key :: F2 ,
310- F3 => Key :: F3 ,
311- F4 => Key :: F4 ,
312- F5 => Key :: F5 ,
313- F6 => Key :: F6 ,
314- F7 => Key :: F7 ,
315- F8 => Key :: F8 ,
316- F9 => Key :: F9 ,
317- F10 => Key :: F10 ,
318- F11 => Key :: F11 ,
319- F12 => Key :: F12 ,
320- F13 => Key :: F13 ,
321- F14 => Key :: F14 ,
322- F15 => Key :: F15 ,
323- F16 => Key :: F16 ,
324- F17 => Key :: F17 ,
325- F18 => Key :: F18 ,
326- F19 => Key :: F19 ,
327- F20 => Key :: F20 ,
328- F21 => Key :: F21 ,
329- F22 => Key :: F22 ,
330- F23 => Key :: F23 ,
331- F24 => Key :: F24 ,
332-
333- Home => Key :: Home ,
334- Delete => Key :: Delete ,
335- End => Key :: End ,
336- PageDown => Key :: PageDown ,
337- PageUp => Key :: PageUp ,
338- Back => Key :: Backspace ,
339- Return => Key :: Return ,
340- Space => Key :: Space ,
341-
342- Left => Key :: LeftArrow ,
343- Up => Key :: UpArrow ,
344- Right => Key :: RightArrow ,
345- Down => Key :: DownArrow ,
346-
347- Numpad0 => Key :: Numpad0 ,
348- Numpad1 => Key :: Numpad1 ,
349- Numpad2 => Key :: Numpad2 ,
350- Numpad3 => Key :: Numpad3 ,
351- Numpad4 => Key :: Numpad4 ,
352- Numpad5 => Key :: Numpad5 ,
353- Numpad6 => Key :: Numpad6 ,
354- Numpad7 => Key :: Numpad7 ,
355- Numpad8 => Key :: Numpad8 ,
356- Numpad9 => Key :: Numpad9 ,
357-
358- Add => Key :: Plus ,
359- Apostrophe => Key :: Apostrophe ,
360- At => Key :: At ,
361- Backslash => Key :: Backslash ,
362- Colon => Key :: Colon ,
363- Comma => Key :: Comma ,
364- Decimal => Key :: Decimal ,
365- Divide => Key :: Divide ,
366- Equals => Key :: Equals ,
367- Grave => Key :: Backtick ,
368- LBracket => Key :: LeftBracket ,
369- Minus => Key :: Minus ,
370- Multiply => Key :: Multiply ,
371- NumpadComma => Key :: NumpadComma ,
372- NumpadEnter => Key :: NumpadEnter ,
373- NumpadEquals => Key :: NumpadEquals ,
374- Period => Key :: Period ,
375- RBracket => Key :: RightBracket ,
376- Semicolon => Key :: Semicolon ,
377- Slash => Key :: Slash ,
378- Subtract => Key :: Minus ,
379- Tab => Key :: Tab ,
267+ VirtualKeyCode :: Key1 => Key :: Num1 ,
268+ VirtualKeyCode :: Key2 => Key :: Num2 ,
269+ VirtualKeyCode :: Key3 => Key :: Num3 ,
270+ VirtualKeyCode :: Key4 => Key :: Num4 ,
271+ VirtualKeyCode :: Key5 => Key :: Num5 ,
272+ VirtualKeyCode :: Key6 => Key :: Num6 ,
273+ VirtualKeyCode :: Key7 => Key :: Num7 ,
274+ VirtualKeyCode :: Key8 => Key :: Num8 ,
275+ VirtualKeyCode :: Key9 => Key :: Num9 ,
276+ VirtualKeyCode :: Key0 => Key :: Num0 ,
277+
278+ VirtualKeyCode :: A => Key :: A ,
279+ VirtualKeyCode :: B => Key :: B ,
280+ VirtualKeyCode :: C => Key :: C ,
281+ VirtualKeyCode :: D => Key :: D ,
282+ VirtualKeyCode :: E => Key :: E ,
283+ VirtualKeyCode :: F => Key :: F ,
284+ VirtualKeyCode :: G => Key :: G ,
285+ VirtualKeyCode :: H => Key :: H ,
286+ VirtualKeyCode :: I => Key :: I ,
287+ VirtualKeyCode :: J => Key :: J ,
288+ VirtualKeyCode :: K => Key :: K ,
289+ VirtualKeyCode :: L => Key :: L ,
290+ VirtualKeyCode :: M => Key :: M ,
291+ VirtualKeyCode :: N => Key :: N ,
292+ VirtualKeyCode :: O => Key :: O ,
293+ VirtualKeyCode :: P => Key :: P ,
294+ VirtualKeyCode :: Q => Key :: Q ,
295+ VirtualKeyCode :: R => Key :: R ,
296+ VirtualKeyCode :: S => Key :: S ,
297+ VirtualKeyCode :: T => Key :: T ,
298+ VirtualKeyCode :: U => Key :: U ,
299+ VirtualKeyCode :: V => Key :: V ,
300+ VirtualKeyCode :: W => Key :: W ,
301+ VirtualKeyCode :: X => Key :: X ,
302+ VirtualKeyCode :: Y => Key :: Y ,
303+ VirtualKeyCode :: Z => Key :: Z ,
304+
305+ VirtualKeyCode :: Escape => Key :: Esc ,
306+
307+ VirtualKeyCode :: F1 => Key :: F1 ,
308+ VirtualKeyCode :: F2 => Key :: F2 ,
309+ VirtualKeyCode :: F3 => Key :: F3 ,
310+ VirtualKeyCode :: F4 => Key :: F4 ,
311+ VirtualKeyCode :: F5 => Key :: F5 ,
312+ VirtualKeyCode :: F6 => Key :: F6 ,
313+ VirtualKeyCode :: F7 => Key :: F7 ,
314+ VirtualKeyCode :: F8 => Key :: F8 ,
315+ VirtualKeyCode :: F9 => Key :: F9 ,
316+ VirtualKeyCode :: F10 => Key :: F10 ,
317+ VirtualKeyCode :: F11 => Key :: F11 ,
318+ VirtualKeyCode :: F12 => Key :: F12 ,
319+ VirtualKeyCode :: F13 => Key :: F13 ,
320+ VirtualKeyCode :: F14 => Key :: F14 ,
321+ VirtualKeyCode :: F15 => Key :: F15 ,
322+ VirtualKeyCode :: F16 => Key :: F16 ,
323+ VirtualKeyCode :: F17 => Key :: F17 ,
324+ VirtualKeyCode :: F18 => Key :: F18 ,
325+ VirtualKeyCode :: F19 => Key :: F19 ,
326+ VirtualKeyCode :: F20 => Key :: F20 ,
327+ VirtualKeyCode :: F21 => Key :: F21 ,
328+ VirtualKeyCode :: F22 => Key :: F22 ,
329+ VirtualKeyCode :: F23 => Key :: F23 ,
330+ VirtualKeyCode :: F24 => Key :: F24 ,
331+
332+ VirtualKeyCode :: Home => Key :: Home ,
333+ VirtualKeyCode :: Delete => Key :: Delete ,
334+ VirtualKeyCode :: End => Key :: End ,
335+ VirtualKeyCode :: PageDown => Key :: PageDown ,
336+ VirtualKeyCode :: PageUp => Key :: PageUp ,
337+ VirtualKeyCode :: Back => Key :: Backspace ,
338+ VirtualKeyCode :: Return => Key :: Return ,
339+ VirtualKeyCode :: Space => Key :: Space ,
340+
341+ VirtualKeyCode :: Left => Key :: LeftArrow ,
342+ VirtualKeyCode :: Up => Key :: UpArrow ,
343+ VirtualKeyCode :: Right => Key :: RightArrow ,
344+ VirtualKeyCode :: Down => Key :: DownArrow ,
345+
346+ VirtualKeyCode :: Numpad0 => Key :: Numpad0 ,
347+ VirtualKeyCode :: Numpad1 => Key :: Numpad1 ,
348+ VirtualKeyCode :: Numpad2 => Key :: Numpad2 ,
349+ VirtualKeyCode :: Numpad3 => Key :: Numpad3 ,
350+ VirtualKeyCode :: Numpad4 => Key :: Numpad4 ,
351+ VirtualKeyCode :: Numpad5 => Key :: Numpad5 ,
352+ VirtualKeyCode :: Numpad6 => Key :: Numpad6 ,
353+ VirtualKeyCode :: Numpad7 => Key :: Numpad7 ,
354+ VirtualKeyCode :: Numpad8 => Key :: Numpad8 ,
355+ VirtualKeyCode :: Numpad9 => Key :: Numpad9 ,
356+
357+ VirtualKeyCode :: Apostrophe => Key :: Apostrophe ,
358+ VirtualKeyCode :: At => Key :: At ,
359+ VirtualKeyCode :: Backslash => Key :: Backslash ,
360+ VirtualKeyCode :: Colon => Key :: Colon ,
361+ VirtualKeyCode :: Comma => Key :: Comma ,
362+ VirtualKeyCode :: Equals => Key :: Equals ,
363+ VirtualKeyCode :: Grave => Key :: Backtick ,
364+ VirtualKeyCode :: LBracket => Key :: LeftBracket ,
365+ VirtualKeyCode :: Minus => Key :: Minus ,
366+ VirtualKeyCode :: NumpadAdd => Key :: Plus ,
367+ VirtualKeyCode :: NumpadComma => Key :: NumpadComma ,
368+ VirtualKeyCode :: NumpadDecimal => Key :: Decimal ,
369+ VirtualKeyCode :: NumpadDivide => Key :: Divide ,
370+ VirtualKeyCode :: NumpadEnter => Key :: NumpadEnter ,
371+ VirtualKeyCode :: NumpadEquals => Key :: NumpadEquals ,
372+ VirtualKeyCode :: NumpadMultiply => Key :: Multiply ,
373+ VirtualKeyCode :: NumpadSubtract => Key :: Minus ,
374+ VirtualKeyCode :: Period => Key :: Period ,
375+ VirtualKeyCode :: RBracket => Key :: RightBracket ,
376+ VirtualKeyCode :: Semicolon => Key :: Semicolon ,
377+ VirtualKeyCode :: Slash => Key :: Slash ,
378+ VirtualKeyCode :: Tab => Key :: Tab ,
380379
381380 // Unsupported keys (could be changed in the future)
382- Snapshot |
383- Scroll |
384- Pause |
385- Insert |
386- Compose |
387- Caret |
388- Numlock |
389- AbntC1 |
390- AbntC2 |
391- Apps |
392- Ax |
393- Calculator |
394- Capital |
395- Convert |
396- Kana |
397- Kanji |
398- LAlt |
399- LControl |
400- LShift |
401- LWin |
402- Mail |
403- MediaSelect |
404- MediaStop |
405- Mute |
406- MyComputer |
407- NavigateForward |
408- NavigateBackward |
409- NextTrack |
410- NoConvert |
411- OEM102 |
412- PlayPause |
413- Power |
414- PrevTrack |
415- RAlt |
416- RControl |
417- RShift |
418- RWin |
419- Sleep |
420- Stop |
421- Sysrq |
422- Underline |
423- Unlabeled |
424- VolumeDown |
425- VolumeUp |
426- Wake |
427- WebBack |
428- WebFavorites |
429- WebForward |
430- WebHome |
431- WebRefresh |
432- WebSearch |
433- WebStop |
434- Yen |
435- Copy |
436- Paste |
437- Cut => return None ,
381+ _ => return None ,
438382 } )
439383 }
440384}
@@ -454,12 +398,11 @@ pub enum MouseButton {
454398impl MouseButton {
455399 #[ cfg_attr( any( feature = "test" , test) , allow( dead_code) ) ]
456400 fn from_button ( button : glutin_event:: MouseButton ) -> Option < Self > {
457- use glutin_event:: MouseButton :: * ;
458401 match button {
459- Left => Some ( MouseButton :: LeftButton ) ,
460- Middle => Some ( MouseButton :: MiddleButton ) ,
461- Right => Some ( MouseButton :: RightButton ) ,
462- Other ( _) => None ,
402+ glutin_event :: MouseButton :: Left => Some ( MouseButton :: LeftButton ) ,
403+ glutin_event :: MouseButton :: Middle => Some ( MouseButton :: MiddleButton ) ,
404+ glutin_event :: MouseButton :: Right => Some ( MouseButton :: RightButton ) ,
405+ glutin_event :: MouseButton :: Other ( _) => None ,
463406 }
464407 }
465408}
0 commit comments