diff --git a/crates/egui/src/response.rs b/crates/egui/src/response.rs index b23372d1..500358fc 100644 --- a/crates/egui/src/response.rs +++ b/crates/egui/src/response.rs @@ -552,7 +552,7 @@ impl Response { if self.sense.focusable { node.focusable = true; } - if self.sense.click { + if self.sense.click && node.default_action_verb.is_none() { node.default_action_verb = Some(accesskit::DefaultActionVerb::Click); } } diff --git a/crates/egui/src/widgets/text_edit/builder.rs b/crates/egui/src/widgets/text_edit/builder.rs index d4a30c2c..981c1b6d 100644 --- a/crates/egui/src/widgets/text_edit/builder.rs +++ b/crates/egui/src/widgets/text_edit/builder.rs @@ -719,8 +719,9 @@ impl<'t> TextEdit<'t> { node.word_lengths = word_lengths.into(); } + let mut node = ui.ctx().accesskit_node(parent_id, None); + if let Some(cursor_range) = &cursor_range { - let mut node = ui.ctx().accesskit_node(parent_id, None); let anchor = &cursor_range.secondary.rcursor; let focus = &cursor_range.primary.rcursor; node.text_selection = Some(TextSelection { @@ -734,6 +735,8 @@ impl<'t> TextEdit<'t> { }, }); } + + node.default_action_verb = Some(accesskit::DefaultActionVerb::Focus); } TextEditOutput {