diff --git a/src/widget/text_input/input.rs b/src/widget/text_input/input.rs index f440b59c..80bd8b54 100644 --- a/src/widget/text_input/input.rs +++ b/src/widget/text_input/input.rs @@ -1742,9 +1742,11 @@ where { let mut editor = Editor::new(unsecured_value, &mut state.cursor); - editor.insert( - text.unwrap_or_default().chars().next().unwrap_or_default(), - ); + let character = + text.unwrap_or_default().chars().next().unwrap_or_default(); + if !character.is_control() { + editor.insert(character); + } let contents = editor.contents(); let unsecured_value = Value::new(&contents); let message = (on_input)(contents);