summaryrefslogtreecommitdiffstats
path: root/native
diff options
context:
space:
mode:
authorLibravatar FabianLars <fabianlars@fabianlars.de>2020-04-06 15:22:52 +0200
committerLibravatar FabianLars <fabianlars@fabianlars.de>2020-04-06 15:22:52 +0200
commit6ca97788b2b7c1b24c7371e1e0c8bcef505bcf60 (patch)
treec1d90e0f247cac228177706dc7e0e0f880784823 /native
parentad0a6c4c10afe6dceed52b953cd90aa04e91098a (diff)
downloadiced-6ca97788b2b7c1b24c7371e1e0c8bcef505bcf60.tar.gz
iced-6ca97788b2b7c1b24c7371e1e0c8bcef505bcf60.tar.bz2
iced-6ca97788b2b7c1b24c7371e1e0c8bcef505bcf60.zip
implement ctrl + del on text-input
Diffstat (limited to 'native')
-rw-r--r--native/src/widget/text_input.rs15
1 files changed, 15 insertions, 0 deletions
diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs
index 1c07e252..ae3d74ae 100644
--- a/native/src/widget/text_input.rs
+++ b/native/src/widget/text_input.rs
@@ -358,6 +358,21 @@ where
messages.push(message);
}
keyboard::KeyCode::Delete => {
+ 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(cursor_pos, self.value.len());
+ } else {
+ self.state
+ .cursor
+ .select_right_by_words(&self.value);
+ }
+ }
+
let mut editor =
Editor::new(&mut self.value, &mut self.state.cursor);