Refactor KeyCode into Key and Location

This commit is contained in:
Héctor Ramón Jiménez 2024-01-16 13:28:00 +01:00
parent 534c7dd7b0
commit 64d1ce5532
No known key found for this signature in database
GPG key ID: 7CC46565708259A7
24 changed files with 1277 additions and 461 deletions

View file

@ -462,7 +462,7 @@ async fn run_instance<A, E, C>(
if let Some(event) = conversion::window_event(
window::Id::MAIN,
&window_event,
window_event,
state.scale_factor(),
state.modifiers(),
) {

View file

@ -128,7 +128,7 @@ pub fn window_settings(
/// Converts a winit window event into an iced event.
pub fn window_event(
id: window::Id,
event: &winit::event::WindowEvent,
event: winit::event::WindowEvent,
scale_factor: f64,
modifiers: winit::keyboard::ModifiersState,
) -> Option<Event> {
@ -163,7 +163,7 @@ pub fn window_event(
Some(Event::Mouse(mouse::Event::CursorLeft))
}
WindowEvent::MouseInput { button, state, .. } => {
let button = mouse_button(*button);
let button = mouse_button(button);
Some(Event::Mouse(match state {
winit::event::ElementState::Pressed => {
@ -178,8 +178,8 @@ pub fn window_event(
winit::event::MouseScrollDelta::LineDelta(delta_x, delta_y) => {
Some(Event::Mouse(mouse::Event::WheelScrolled {
delta: mouse::ScrollDelta::Lines {
x: *delta_x,
y: *delta_y,
x: delta_x,
y: delta_y,
},
}))
}
@ -198,18 +198,33 @@ pub fn window_event(
logical_key,
state,
text,
location,
..
},
..
} => Some(Event::Keyboard({
let key_code = key_code(logical_key);
let key = key(logical_key);
let modifiers = self::modifiers(modifiers);
let location = match location {
winit::keyboard::KeyLocation::Standard => {
keyboard::Location::Standard
}
winit::keyboard::KeyLocation::Left => keyboard::Location::Left,
winit::keyboard::KeyLocation::Right => {
keyboard::Location::Right
}
winit::keyboard::KeyLocation::Numpad => {
keyboard::Location::Numpad
}
};
match state {
winit::event::ElementState::Pressed => {
keyboard::Event::KeyPressed {
key_code,
key,
modifiers,
location,
text: text
.as_ref()
.map(winit::keyboard::SmolStr::to_string),
@ -217,8 +232,9 @@ pub fn window_event(
}
winit::event::ElementState::Released => {
keyboard::Event::KeyReleased {
key_code,
key,
modifiers,
location,
}
}
}
@ -230,7 +246,7 @@ pub fn window_event(
}
WindowEvent::Focused(focused) => Some(Event::Window(
id,
if *focused {
if focused {
window::Event::Focused
} else {
window::Event::Unfocused
@ -246,7 +262,7 @@ pub fn window_event(
Some(Event::Window(id, window::Event::FilesHoveredLeft))
}
WindowEvent::Touch(touch) => {
Some(Event::Touch(touch_event(*touch, scale_factor)))
Some(Event::Touch(touch_event(touch, scale_factor)))
}
WindowEvent::Moved(position) => {
let winit::dpi::LogicalPosition { x, y } =
@ -449,125 +465,328 @@ pub fn touch_event(
///
/// [`winit`]: https://github.com/rust-windowing/winit
/// [`iced`]: https://github.com/iced-rs/iced/tree/0.10
pub fn key_code(key: &winit::keyboard::Key) -> keyboard::KeyCode {
use keyboard::KeyCode;
pub fn key(key: winit::keyboard::Key) -> keyboard::Key {
use keyboard::key::Named;
use winit::keyboard::NamedKey;
match key {
winit::keyboard::Key::Character(c) => match c.as_str() {
"1" => KeyCode::Key1,
"2" => KeyCode::Key2,
"3" => KeyCode::Key3,
"4" => KeyCode::Key4,
"5" => KeyCode::Key5,
"6" => KeyCode::Key6,
"7" => KeyCode::Key7,
"8" => KeyCode::Key8,
"9" => KeyCode::Key9,
"0" => KeyCode::Key0,
"a" => KeyCode::A,
"b" => KeyCode::B,
"c" => KeyCode::C,
"d" => KeyCode::D,
"e" => KeyCode::E,
"f" => KeyCode::F,
"g" => KeyCode::G,
"h" => KeyCode::H,
"i" => KeyCode::I,
"j" => KeyCode::J,
"k" => KeyCode::K,
"l" => KeyCode::L,
"m" => KeyCode::M,
"n" => KeyCode::N,
"o" => KeyCode::O,
"p" => KeyCode::P,
"q" => KeyCode::Q,
"r" => KeyCode::R,
"s" => KeyCode::S,
"t" => KeyCode::T,
"u" => KeyCode::U,
"v" => KeyCode::V,
"w" => KeyCode::W,
"x" => KeyCode::X,
"y" => KeyCode::Y,
"z" => KeyCode::Z,
_ => KeyCode::Unlabeled,
},
winit::keyboard::Key::Named(named_key) => match named_key {
NamedKey::Escape => KeyCode::Escape,
NamedKey::F1 => KeyCode::F1,
NamedKey::F2 => KeyCode::F2,
NamedKey::F3 => KeyCode::F3,
NamedKey::F4 => KeyCode::F4,
NamedKey::F5 => KeyCode::F5,
NamedKey::F6 => KeyCode::F6,
NamedKey::F7 => KeyCode::F7,
NamedKey::F8 => KeyCode::F8,
NamedKey::F9 => KeyCode::F9,
NamedKey::F10 => KeyCode::F10,
NamedKey::F11 => KeyCode::F11,
NamedKey::F12 => KeyCode::F12,
NamedKey::F13 => KeyCode::F13,
NamedKey::F14 => KeyCode::F14,
NamedKey::F15 => KeyCode::F15,
NamedKey::F16 => KeyCode::F16,
NamedKey::F17 => KeyCode::F17,
NamedKey::F18 => KeyCode::F18,
NamedKey::F19 => KeyCode::F19,
NamedKey::F20 => KeyCode::F20,
NamedKey::F21 => KeyCode::F21,
NamedKey::F22 => KeyCode::F22,
NamedKey::F23 => KeyCode::F23,
NamedKey::F24 => KeyCode::F24,
NamedKey::PrintScreen => KeyCode::Snapshot,
NamedKey::ScrollLock => KeyCode::Scroll,
NamedKey::Pause => KeyCode::Pause,
NamedKey::Insert => KeyCode::Insert,
NamedKey::Home => KeyCode::Home,
NamedKey::Delete => KeyCode::Delete,
NamedKey::End => KeyCode::End,
NamedKey::PageDown => KeyCode::PageDown,
NamedKey::PageUp => KeyCode::PageUp,
NamedKey::ArrowLeft => KeyCode::Left,
NamedKey::ArrowUp => KeyCode::Up,
NamedKey::ArrowRight => KeyCode::Right,
NamedKey::ArrowDown => KeyCode::Down,
NamedKey::Backspace => KeyCode::Backspace,
NamedKey::Enter => KeyCode::Enter,
NamedKey::Space => KeyCode::Space,
NamedKey::Compose => KeyCode::Compose,
NamedKey::NumLock => KeyCode::Numlock,
NamedKey::AppSwitch => KeyCode::Apps,
NamedKey::Convert => KeyCode::Convert,
NamedKey::LaunchMail => KeyCode::Mail,
NamedKey::MediaApps => KeyCode::MediaSelect,
NamedKey::MediaStop => KeyCode::MediaStop,
NamedKey::AudioVolumeMute => KeyCode::Mute,
NamedKey::MediaStepForward => KeyCode::NavigateForward,
NamedKey::MediaStepBackward => KeyCode::NavigateBackward,
NamedKey::MediaSkipForward => KeyCode::NextTrack,
NamedKey::NonConvert => KeyCode::NoConvert,
NamedKey::MediaPlayPause => KeyCode::PlayPause,
NamedKey::Power => KeyCode::Power,
NamedKey::MediaSkipBackward => KeyCode::PrevTrack,
NamedKey::PowerOff => KeyCode::Sleep,
NamedKey::Tab => KeyCode::Tab,
NamedKey::AudioVolumeDown => KeyCode::VolumeDown,
NamedKey::AudioVolumeUp => KeyCode::VolumeUp,
NamedKey::WakeUp => KeyCode::Wake,
NamedKey::BrowserBack => KeyCode::WebBack,
NamedKey::BrowserFavorites => KeyCode::WebFavorites,
NamedKey::BrowserForward => KeyCode::WebForward,
NamedKey::BrowserHome => KeyCode::WebHome,
NamedKey::BrowserRefresh => KeyCode::WebRefresh,
NamedKey::BrowserSearch => KeyCode::WebSearch,
NamedKey::BrowserStop => KeyCode::WebStop,
NamedKey::Copy => KeyCode::Copy,
NamedKey::Paste => KeyCode::Paste,
NamedKey::Cut => KeyCode::Cut,
_ => KeyCode::Unlabeled,
},
_ => KeyCode::Unlabeled,
winit::keyboard::Key::Character(c) => keyboard::Key::Character(c),
winit::keyboard::Key::Named(named_key) => {
keyboard::Key::Named(match named_key {
NamedKey::Alt => Named::Alt,
NamedKey::AltGraph => Named::AltGraph,
NamedKey::CapsLock => Named::CapsLock,
NamedKey::Control => Named::Control,
NamedKey::Fn => Named::Fn,
NamedKey::FnLock => Named::FnLock,
NamedKey::NumLock => Named::NumLock,
NamedKey::ScrollLock => Named::ScrollLock,
NamedKey::Shift => Named::Shift,
NamedKey::Symbol => Named::Symbol,
NamedKey::SymbolLock => Named::SymbolLock,
NamedKey::Meta => Named::Meta,
NamedKey::Hyper => Named::Hyper,
NamedKey::Super => Named::Super,
NamedKey::Enter => Named::Enter,
NamedKey::Tab => Named::Tab,
NamedKey::Space => Named::Space,
NamedKey::ArrowDown => Named::ArrowDown,
NamedKey::ArrowLeft => Named::ArrowLeft,
NamedKey::ArrowRight => Named::ArrowRight,
NamedKey::ArrowUp => Named::ArrowUp,
NamedKey::End => Named::End,
NamedKey::Home => Named::Home,
NamedKey::PageDown => Named::PageDown,
NamedKey::PageUp => Named::PageUp,
NamedKey::Backspace => Named::Backspace,
NamedKey::Clear => Named::Clear,
NamedKey::Copy => Named::Copy,
NamedKey::CrSel => Named::CrSel,
NamedKey::Cut => Named::Cut,
NamedKey::Delete => Named::Delete,
NamedKey::EraseEof => Named::EraseEof,
NamedKey::ExSel => Named::ExSel,
NamedKey::Insert => Named::Insert,
NamedKey::Paste => Named::Paste,
NamedKey::Redo => Named::Redo,
NamedKey::Undo => Named::Undo,
NamedKey::Accept => Named::Accept,
NamedKey::Again => Named::Again,
NamedKey::Attn => Named::Attn,
NamedKey::Cancel => Named::Cancel,
NamedKey::ContextMenu => Named::ContextMenu,
NamedKey::Escape => Named::Escape,
NamedKey::Execute => Named::Execute,
NamedKey::Find => Named::Find,
NamedKey::Help => Named::Help,
NamedKey::Pause => Named::Pause,
NamedKey::Play => Named::Play,
NamedKey::Props => Named::Props,
NamedKey::Select => Named::Select,
NamedKey::ZoomIn => Named::ZoomIn,
NamedKey::ZoomOut => Named::ZoomOut,
NamedKey::BrightnessDown => Named::BrightnessDown,
NamedKey::BrightnessUp => Named::BrightnessUp,
NamedKey::Eject => Named::Eject,
NamedKey::LogOff => Named::LogOff,
NamedKey::Power => Named::Power,
NamedKey::PowerOff => Named::PowerOff,
NamedKey::PrintScreen => Named::PrintScreen,
NamedKey::Hibernate => Named::Hibernate,
NamedKey::Standby => Named::Standby,
NamedKey::WakeUp => Named::WakeUp,
NamedKey::AllCandidates => Named::AllCandidates,
NamedKey::Alphanumeric => Named::Alphanumeric,
NamedKey::CodeInput => Named::CodeInput,
NamedKey::Compose => Named::Compose,
NamedKey::Convert => Named::Convert,
NamedKey::FinalMode => Named::FinalMode,
NamedKey::GroupFirst => Named::GroupFirst,
NamedKey::GroupLast => Named::GroupLast,
NamedKey::GroupNext => Named::GroupNext,
NamedKey::GroupPrevious => Named::GroupPrevious,
NamedKey::ModeChange => Named::ModeChange,
NamedKey::NextCandidate => Named::NextCandidate,
NamedKey::NonConvert => Named::NonConvert,
NamedKey::PreviousCandidate => Named::PreviousCandidate,
NamedKey::Process => Named::Process,
NamedKey::SingleCandidate => Named::SingleCandidate,
NamedKey::HangulMode => Named::HangulMode,
NamedKey::HanjaMode => Named::HanjaMode,
NamedKey::JunjaMode => Named::JunjaMode,
NamedKey::Eisu => Named::Eisu,
NamedKey::Hankaku => Named::Hankaku,
NamedKey::Hiragana => Named::Hiragana,
NamedKey::HiraganaKatakana => Named::HiraganaKatakana,
NamedKey::KanaMode => Named::KanaMode,
NamedKey::KanjiMode => Named::KanjiMode,
NamedKey::Katakana => Named::Katakana,
NamedKey::Romaji => Named::Romaji,
NamedKey::Zenkaku => Named::Zenkaku,
NamedKey::ZenkakuHankaku => Named::ZenkakuHankaku,
NamedKey::Soft1 => Named::Soft1,
NamedKey::Soft2 => Named::Soft2,
NamedKey::Soft3 => Named::Soft3,
NamedKey::Soft4 => Named::Soft4,
NamedKey::ChannelDown => Named::ChannelDown,
NamedKey::ChannelUp => Named::ChannelUp,
NamedKey::Close => Named::Close,
NamedKey::MailForward => Named::MailForward,
NamedKey::MailReply => Named::MailReply,
NamedKey::MailSend => Named::MailSend,
NamedKey::MediaClose => Named::MediaClose,
NamedKey::MediaFastForward => Named::MediaFastForward,
NamedKey::MediaPause => Named::MediaPause,
NamedKey::MediaPlay => Named::MediaPlay,
NamedKey::MediaPlayPause => Named::MediaPlayPause,
NamedKey::MediaRecord => Named::MediaRecord,
NamedKey::MediaRewind => Named::MediaRewind,
NamedKey::MediaStop => Named::MediaStop,
NamedKey::MediaTrackNext => Named::MediaTrackNext,
NamedKey::MediaTrackPrevious => Named::MediaTrackPrevious,
NamedKey::New => Named::New,
NamedKey::Open => Named::Open,
NamedKey::Print => Named::Print,
NamedKey::Save => Named::Save,
NamedKey::SpellCheck => Named::SpellCheck,
NamedKey::Key11 => Named::Key11,
NamedKey::Key12 => Named::Key12,
NamedKey::AudioBalanceLeft => Named::AudioBalanceLeft,
NamedKey::AudioBalanceRight => Named::AudioBalanceRight,
NamedKey::AudioBassBoostDown => Named::AudioBassBoostDown,
NamedKey::AudioBassBoostToggle => Named::AudioBassBoostToggle,
NamedKey::AudioBassBoostUp => Named::AudioBassBoostUp,
NamedKey::AudioFaderFront => Named::AudioFaderFront,
NamedKey::AudioFaderRear => Named::AudioFaderRear,
NamedKey::AudioSurroundModeNext => Named::AudioSurroundModeNext,
NamedKey::AudioTrebleDown => Named::AudioTrebleDown,
NamedKey::AudioTrebleUp => Named::AudioTrebleUp,
NamedKey::AudioVolumeDown => Named::AudioVolumeDown,
NamedKey::AudioVolumeUp => Named::AudioVolumeUp,
NamedKey::AudioVolumeMute => Named::AudioVolumeMute,
NamedKey::MicrophoneToggle => Named::MicrophoneToggle,
NamedKey::MicrophoneVolumeDown => Named::MicrophoneVolumeDown,
NamedKey::MicrophoneVolumeUp => Named::MicrophoneVolumeUp,
NamedKey::MicrophoneVolumeMute => Named::MicrophoneVolumeMute,
NamedKey::SpeechCorrectionList => Named::SpeechCorrectionList,
NamedKey::SpeechInputToggle => Named::SpeechInputToggle,
NamedKey::LaunchApplication1 => Named::LaunchApplication1,
NamedKey::LaunchApplication2 => Named::LaunchApplication2,
NamedKey::LaunchCalendar => Named::LaunchCalendar,
NamedKey::LaunchContacts => Named::LaunchContacts,
NamedKey::LaunchMail => Named::LaunchMail,
NamedKey::LaunchMediaPlayer => Named::LaunchMediaPlayer,
NamedKey::LaunchMusicPlayer => Named::LaunchMusicPlayer,
NamedKey::LaunchPhone => Named::LaunchPhone,
NamedKey::LaunchScreenSaver => Named::LaunchScreenSaver,
NamedKey::LaunchSpreadsheet => Named::LaunchSpreadsheet,
NamedKey::LaunchWebBrowser => Named::LaunchWebBrowser,
NamedKey::LaunchWebCam => Named::LaunchWebCam,
NamedKey::LaunchWordProcessor => Named::LaunchWordProcessor,
NamedKey::BrowserBack => Named::BrowserBack,
NamedKey::BrowserFavorites => Named::BrowserFavorites,
NamedKey::BrowserForward => Named::BrowserForward,
NamedKey::BrowserHome => Named::BrowserHome,
NamedKey::BrowserRefresh => Named::BrowserRefresh,
NamedKey::BrowserSearch => Named::BrowserSearch,
NamedKey::BrowserStop => Named::BrowserStop,
NamedKey::AppSwitch => Named::AppSwitch,
NamedKey::Call => Named::Call,
NamedKey::Camera => Named::Camera,
NamedKey::CameraFocus => Named::CameraFocus,
NamedKey::EndCall => Named::EndCall,
NamedKey::GoBack => Named::GoBack,
NamedKey::GoHome => Named::GoHome,
NamedKey::HeadsetHook => Named::HeadsetHook,
NamedKey::LastNumberRedial => Named::LastNumberRedial,
NamedKey::Notification => Named::Notification,
NamedKey::MannerMode => Named::MannerMode,
NamedKey::VoiceDial => Named::VoiceDial,
NamedKey::TV => Named::TV,
NamedKey::TV3DMode => Named::TV3DMode,
NamedKey::TVAntennaCable => Named::TVAntennaCable,
NamedKey::TVAudioDescription => Named::TVAudioDescription,
NamedKey::TVAudioDescriptionMixDown => {
Named::TVAudioDescriptionMixDown
}
NamedKey::TVAudioDescriptionMixUp => {
Named::TVAudioDescriptionMixUp
}
NamedKey::TVContentsMenu => Named::TVContentsMenu,
NamedKey::TVDataService => Named::TVDataService,
NamedKey::TVInput => Named::TVInput,
NamedKey::TVInputComponent1 => Named::TVInputComponent1,
NamedKey::TVInputComponent2 => Named::TVInputComponent2,
NamedKey::TVInputComposite1 => Named::TVInputComposite1,
NamedKey::TVInputComposite2 => Named::TVInputComposite2,
NamedKey::TVInputHDMI1 => Named::TVInputHDMI1,
NamedKey::TVInputHDMI2 => Named::TVInputHDMI2,
NamedKey::TVInputHDMI3 => Named::TVInputHDMI3,
NamedKey::TVInputHDMI4 => Named::TVInputHDMI4,
NamedKey::TVInputVGA1 => Named::TVInputVGA1,
NamedKey::TVMediaContext => Named::TVMediaContext,
NamedKey::TVNetwork => Named::TVNetwork,
NamedKey::TVNumberEntry => Named::TVNumberEntry,
NamedKey::TVPower => Named::TVPower,
NamedKey::TVRadioService => Named::TVRadioService,
NamedKey::TVSatellite => Named::TVSatellite,
NamedKey::TVSatelliteBS => Named::TVSatelliteBS,
NamedKey::TVSatelliteCS => Named::TVSatelliteCS,
NamedKey::TVSatelliteToggle => Named::TVSatelliteToggle,
NamedKey::TVTerrestrialAnalog => Named::TVTerrestrialAnalog,
NamedKey::TVTerrestrialDigital => Named::TVTerrestrialDigital,
NamedKey::TVTimer => Named::TVTimer,
NamedKey::AVRInput => Named::AVRInput,
NamedKey::AVRPower => Named::AVRPower,
NamedKey::ColorF0Red => Named::ColorF0Red,
NamedKey::ColorF1Green => Named::ColorF1Green,
NamedKey::ColorF2Yellow => Named::ColorF2Yellow,
NamedKey::ColorF3Blue => Named::ColorF3Blue,
NamedKey::ColorF4Grey => Named::ColorF4Grey,
NamedKey::ColorF5Brown => Named::ColorF5Brown,
NamedKey::ClosedCaptionToggle => Named::ClosedCaptionToggle,
NamedKey::Dimmer => Named::Dimmer,
NamedKey::DisplaySwap => Named::DisplaySwap,
NamedKey::DVR => Named::DVR,
NamedKey::Exit => Named::Exit,
NamedKey::FavoriteClear0 => Named::FavoriteClear0,
NamedKey::FavoriteClear1 => Named::FavoriteClear1,
NamedKey::FavoriteClear2 => Named::FavoriteClear2,
NamedKey::FavoriteClear3 => Named::FavoriteClear3,
NamedKey::FavoriteRecall0 => Named::FavoriteRecall0,
NamedKey::FavoriteRecall1 => Named::FavoriteRecall1,
NamedKey::FavoriteRecall2 => Named::FavoriteRecall2,
NamedKey::FavoriteRecall3 => Named::FavoriteRecall3,
NamedKey::FavoriteStore0 => Named::FavoriteStore0,
NamedKey::FavoriteStore1 => Named::FavoriteStore1,
NamedKey::FavoriteStore2 => Named::FavoriteStore2,
NamedKey::FavoriteStore3 => Named::FavoriteStore3,
NamedKey::Guide => Named::Guide,
NamedKey::GuideNextDay => Named::GuideNextDay,
NamedKey::GuidePreviousDay => Named::GuidePreviousDay,
NamedKey::Info => Named::Info,
NamedKey::InstantReplay => Named::InstantReplay,
NamedKey::Link => Named::Link,
NamedKey::ListProgram => Named::ListProgram,
NamedKey::LiveContent => Named::LiveContent,
NamedKey::Lock => Named::Lock,
NamedKey::MediaApps => Named::MediaApps,
NamedKey::MediaAudioTrack => Named::MediaAudioTrack,
NamedKey::MediaLast => Named::MediaLast,
NamedKey::MediaSkipBackward => Named::MediaSkipBackward,
NamedKey::MediaSkipForward => Named::MediaSkipForward,
NamedKey::MediaStepBackward => Named::MediaStepBackward,
NamedKey::MediaStepForward => Named::MediaStepForward,
NamedKey::MediaTopMenu => Named::MediaTopMenu,
NamedKey::NavigateIn => Named::NavigateIn,
NamedKey::NavigateNext => Named::NavigateNext,
NamedKey::NavigateOut => Named::NavigateOut,
NamedKey::NavigatePrevious => Named::NavigatePrevious,
NamedKey::NextFavoriteChannel => Named::NextFavoriteChannel,
NamedKey::NextUserProfile => Named::NextUserProfile,
NamedKey::OnDemand => Named::OnDemand,
NamedKey::Pairing => Named::Pairing,
NamedKey::PinPDown => Named::PinPDown,
NamedKey::PinPMove => Named::PinPMove,
NamedKey::PinPToggle => Named::PinPToggle,
NamedKey::PinPUp => Named::PinPUp,
NamedKey::PlaySpeedDown => Named::PlaySpeedDown,
NamedKey::PlaySpeedReset => Named::PlaySpeedReset,
NamedKey::PlaySpeedUp => Named::PlaySpeedUp,
NamedKey::RandomToggle => Named::RandomToggle,
NamedKey::RcLowBattery => Named::RcLowBattery,
NamedKey::RecordSpeedNext => Named::RecordSpeedNext,
NamedKey::RfBypass => Named::RfBypass,
NamedKey::ScanChannelsToggle => Named::ScanChannelsToggle,
NamedKey::ScreenModeNext => Named::ScreenModeNext,
NamedKey::Settings => Named::Settings,
NamedKey::SplitScreenToggle => Named::SplitScreenToggle,
NamedKey::STBInput => Named::STBInput,
NamedKey::STBPower => Named::STBPower,
NamedKey::Subtitle => Named::Subtitle,
NamedKey::Teletext => Named::Teletext,
NamedKey::VideoModeNext => Named::VideoModeNext,
NamedKey::Wink => Named::Wink,
NamedKey::ZoomToggle => Named::ZoomToggle,
NamedKey::F1 => Named::F1,
NamedKey::F2 => Named::F2,
NamedKey::F3 => Named::F3,
NamedKey::F4 => Named::F4,
NamedKey::F5 => Named::F5,
NamedKey::F6 => Named::F6,
NamedKey::F7 => Named::F7,
NamedKey::F8 => Named::F8,
NamedKey::F9 => Named::F9,
NamedKey::F10 => Named::F10,
NamedKey::F11 => Named::F11,
NamedKey::F12 => Named::F12,
NamedKey::F13 => Named::F13,
NamedKey::F14 => Named::F14,
NamedKey::F15 => Named::F15,
NamedKey::F16 => Named::F16,
NamedKey::F17 => Named::F17,
NamedKey::F18 => Named::F18,
NamedKey::F19 => Named::F19,
NamedKey::F20 => Named::F20,
NamedKey::F21 => Named::F21,
NamedKey::F22 => Named::F22,
NamedKey::F23 => Named::F23,
NamedKey::F24 => Named::F24,
NamedKey::F25 => Named::F25,
NamedKey::F26 => Named::F26,
NamedKey::F27 => Named::F27,
NamedKey::F28 => Named::F28,
NamedKey::F29 => Named::F29,
NamedKey::F30 => Named::F30,
NamedKey::F31 => Named::F31,
NamedKey::F32 => Named::F32,
NamedKey::F33 => Named::F33,
NamedKey::F34 => Named::F34,
NamedKey::F35 => Named::F35,
_ => return keyboard::Key::Unidentified,
})
}
_ => keyboard::Key::Unidentified,
}
}

View file

@ -645,7 +645,7 @@ async fn run_instance<A, E, C>(
if let Some(event) = conversion::window_event(
id,
&window_event,
window_event,
window.state.scale_factor(),
window.state.modifiers(),
) {