From 7e69cb4b18cde29eceb57e3712c0630d279e7984 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Wed, 12 Apr 2023 04:20:04 +0200 Subject: Unfocus `TextInput` if it becomes disabled --- native/src/widget/text_input.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'native') diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs index 0cbc65db..4c10f5bb 100644 --- a/native/src/widget/text_input.rs +++ b/native/src/widget/text_input.rs @@ -227,6 +227,18 @@ where tree::State::new(State::new()) } + fn diff(&self, tree: &mut Tree) { + let state = tree.state.downcast_mut::(); + + // Unfocus text input if it becomes disabled + if self.on_input.is_none() { + state.last_click = None; + state.is_focused = None; + state.is_pasting = None; + state.is_dragging = false; + } + } + fn width(&self) -> Length { self.width } -- cgit