diff options
-rw-r--r-- | native/src/input/mouse.rs | 2 | ||||
-rw-r--r-- | native/src/widget/text_input.rs | 8 |
2 files changed, 4 insertions, 6 deletions
diff --git a/native/src/input/mouse.rs b/native/src/input/mouse.rs index 22c81e15..eaac52f3 100644 --- a/native/src/input/mouse.rs +++ b/native/src/input/mouse.rs @@ -39,7 +39,6 @@ impl State { /// return amount of repetitive mouse clicks /// (1 -> double click, 2 -> triple click) pub fn update(&mut self, position: Point) -> Interaction { - self.last_click_timestamp = Some(SystemTime::now()); self.last_click = match self.last_click { None => Some(Interaction::Click(position)), Some(x) => match x { @@ -54,6 +53,7 @@ impl State { _ => Some(Interaction::Click(position)), }, }; + self.last_click_timestamp = Some(SystemTime::now()); self.last_click.unwrap_or(Interaction::Click(position)) } diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs index 4e7906a8..cadef11d 100644 --- a/native/src/widget/text_input.rs +++ b/native/src/widget/text_input.rs @@ -214,12 +214,10 @@ where match self.state.mouse.update(cursor_position) { Interaction::DoubleClick(_) => { + let end = self.state.cursor.end(); self.state.cursor.select_range( - self.value.previous_start_of_word( - self.state.cursor.end(), - ), - self.value - .next_end_of_word(self.state.cursor.end()), + self.value.previous_start_of_word(end), + self.value.next_end_of_word(end), ) } Interaction::TripleClick(_) => { |