summaryrefslogtreecommitdiffstats
path: root/winit
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector@hecrj.dev>2024-02-26 06:14:07 +0100
committerLibravatar GitHub <noreply@github.com>2024-02-26 06:14:07 +0100
commit58a7007ac194f66c20a6ec8e9c5ae477ab21b622 (patch)
treeb9da837c47be0a961d3dffffeacbe9e8e1710291 /winit
parentf67db901ffd5eb0878252c553803695f00bb4e47 (diff)
parent0cb27631609fefe34af8853338713e35c1bde63d (diff)
downloadiced-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.rs7
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)
+}