diff options
author | 2024-02-26 06:14:07 +0100 | |
---|---|---|
committer | 2024-02-26 06:14:07 +0100 | |
commit | 58a7007ac194f66c20a6ec8e9c5ae477ab21b622 (patch) | |
tree | b9da837c47be0a961d3dffffeacbe9e8e1710291 /winit | |
parent | f67db901ffd5eb0878252c553803695f00bb4e47 (diff) | |
parent | 0cb27631609fefe34af8853338713e35c1bde63d (diff) | |
download | iced-58a7007ac194f66c20a6ec8e9c5ae477ab21b622.tar.gz iced-58a7007ac194f66c20a6ec8e9c5ae477ab21b622.tar.bz2 iced-58a7007ac194f66c20a6ec8e9c5ae477ab21b622.zip |
Merge pull request #2295 from iced-rs/ignore-private-use-chars
Ignore `text` in `KeyPressed` with private use chars
Diffstat (limited to 'winit')
-rw-r--r-- | winit/src/conversion.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/winit/src/conversion.rs b/winit/src/conversion.rs index 3d2ba0a4..fc3d1c08 100644 --- a/winit/src/conversion.rs +++ b/winit/src/conversion.rs @@ -224,7 +224,7 @@ pub fn window_event( // TODO: Fix inconsistent API on Wasm event.text } - }; + }.filter(|text| !text.as_str().chars().any(is_private_use)); let winit::event::KeyEvent { state, location, .. @@ -839,3 +839,8 @@ pub fn icon(icon: window::Icon) -> Option<winit::window::Icon> { winit::window::Icon::from_rgba(pixels, size.width, size.height).ok() } + +// See: https://en.wikipedia.org/wiki/Private_Use_Areas +fn is_private_use(c: char) -> bool { + ('\u{E000}'..='\u{F8FF}').contains(&c) +} |