From 6d86e64846758049735a76ef804bd0531f354b64 Mon Sep 17 00:00:00 2001 From: Jason Lee Date: Thu, 15 Aug 2024 09:45:58 +0800 Subject: [PATCH] Update modal demo to focus input on open. (#147) --- crates/story/src/modal_story.rs | 4 ++++ crates/ui/src/input/input.rs | 1 + 2 files changed, 5 insertions(+) diff --git a/crates/story/src/modal_story.rs b/crates/story/src/modal_story.rs index b7fe1fc8..d957ea35 100644 --- a/crates/story/src/modal_story.rs +++ b/crates/story/src/modal_story.rs @@ -254,6 +254,8 @@ impl ModalStory { let overlay = self.modal_overlay; cx.open_drawer(move |this, cx| { + input.focus_handle(cx).focus(cx); + this.margin_top(px(33.)) .placement(placement) .overlay(overlay) @@ -305,6 +307,8 @@ impl ModalStory { let view = cx.view().clone(); cx.open_modal(move |modal, cx| { + input1.focus_handle(cx).focus(cx); + modal .title("Form Modal") .overlay(overlay) diff --git a/crates/ui/src/input/input.rs b/crates/ui/src/input/input.rs index 4618fa87..763a493d 100644 --- a/crates/ui/src/input/input.rs +++ b/crates/ui/src/input/input.rs @@ -299,6 +299,7 @@ impl TextInput { self.disabled } + /// Focus the input field. pub fn focus(&self, cx: &mut ViewContext) { self.focus_handle.focus(cx); }