gpui: Press enter, space to trigger click to focused element (#35075)

Release Notes:

- N/A

> Any user interaction that is equivalent to a click, such as pressing
the Space key or Enter key while the element is focused. Note that this
only applies to elements with a default key event handler, and
therefore, excludes other elements that have been made focusable by
setting the
[tabindex](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/tabindex)
attribute.

https://developer.mozilla.org/en-US/docs/Web/API/Element/click_event

---------

Co-authored-by: Anthony <anthony@zed.dev>
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
Co-authored-by: Umesh Yadav <23421535+imumesh18@users.noreply.github.com>
This commit is contained in:
Jason Lee 2025-08-06 06:15:30 +08:00 committed by GitHub
parent b7469f5bc3
commit 0025019db4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
19 changed files with 231 additions and 63 deletions

View file

@ -1855,7 +1855,7 @@ impl Render for KeymapEditor {
.on_click(cx.listener(
move |this, event: &ClickEvent, window, cx| {
this.select_index(row_index, None, window, cx);
if event.up.click_count == 2 {
if event.click_count() == 2 {
this.open_edit_keybinding_modal(
false, window, cx,
);

View file

@ -248,7 +248,7 @@ impl TableInteractionState {
.cursor_col_resize()
.when_some(columns.clone(), |this, columns| {
this.on_click(move |event, window, cx| {
if event.down.click_count >= 2 {
if event.click_count() >= 2 {
columns.update(cx, |columns, _| {
columns.on_double_click(
column_ix,
@ -997,7 +997,7 @@ pub fn render_header<const COLS: usize>(
|this, (column_widths, resizables, initial_sizes)| {
if resizables[header_idx].is_resizable() {
this.on_click(move |event, window, cx| {
if event.down.click_count > 1 {
if event.click_count() > 1 {
column_widths
.update(cx, |column, _| {
column.on_double_click(