summaryrefslogtreecommitdiffstats
path: root/native
diff options
context:
space:
mode:
authorLibravatar Michael Swan <mswan@fastmail.com>2020-03-30 20:34:41 -0500
committerLibravatar Michael Swan <mswan@fastmail.com>2020-03-30 22:37:28 -0500
commit4ca54836a8917c0635fa28660eeeeb21de9f905d (patch)
tree13cd3619b011c28958512e9bfc64ab93aa82f6e4 /native
parent6e9ab1cd6f5358d323040379e3aadbed2cc4f7f8 (diff)
downloadiced-4ca54836a8917c0635fa28660eeeeb21de9f905d.tar.gz
iced-4ca54836a8917c0635fa28660eeeeb21de9f905d.tar.bz2
iced-4ca54836a8917c0635fa28660eeeeb21de9f905d.zip
Add Ctrl+Backspace text field behaviour
Diffstat (limited to 'native')
-rw-r--r--native/src/widget/text_input.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs
index 3697ce09..b4ba5afa 100644
--- a/native/src/widget/text_input.rs
+++ b/native/src/widget/text_input.rs
@@ -338,6 +338,17 @@ where
}
}
keyboard::KeyCode::Backspace => {
+ if platform::is_jump_modifier_pressed(modifiers)
+ && self.state.cursor.selection().is_none()
+ {
+ if self.is_secure {
+ let cursor_pos = self.state.cursor.end(&self.value);
+ self.state.cursor.select_range(0, cursor_pos);
+ } else {
+ self.state.cursor.select_left_by_words(&self.value);
+ }
+ }
+
let mut editor =
Editor::new(&mut self.value, &mut self.state.cursor);