Skip to content

Comment on P99 0 ms* autocomplete for 240M domain namesparent

Comments

Because in those contexts, the Space key is being used as a physical mirror of the on-screen button, and on-screen buttons are UX'd to perform action when released.

These two interactions should behave identically:

- Hover over a button, press mouse button 1, release button 1.

- Tab over to a button, press spacebar, release spacebar.

Why on-screen buttons are UX'd to behave this way is a logical follow-up question. I'd wager that it gives a means to bail out of the clicking (e.g. by moving the mouse out of the on-screen button before releasing mousebutton 1, or by pressing Esc while having spacebar still depressed).

Yes, the bailing-out explanation is right. With a mouse it's intentional that you should be able to push the pointer off the button with the mouse button still pressed to cancel.

(Esc while Space is held doesn’t cancel, but Tab does.)

You’re only answering half of the inconsistency: because Enter activates buttons like any other key, on keydown.

While spacebar is depressed:

Qt: Esc cancels. Tab cancels.

Gtk-4: Spacebar auto-clicks before keyup (probably due to auto-repeat).

Win32: Esc sends Esc to the window. Tab cancels.

Firefox: Esc does nothing. Tab cancels.

So, mileage does vary.

Re. Enter key, that's a different key, so different discussion.

Under Linux, Firefox, Chromium and GNOME Web (which is WebKit-based; a.k.a. Epiphany) all have Tab cancel but not Esc.

The GTK 4 behaviour feels very much like a bug. I can reproduce it in gtk4-demo and in gtk3-demo. It leads to obviously-nonsensical behaviour, including messed up window focus. I’m tempted to file a bug report, but haven’t had such productive experiences with filing things on GNOME historically as with Firefox or even Chromium.

Why should Enter being a different key be a different discussion? They’re both used to activate buttons, and one is behaving like every single other keyboard interaction, while the other isn’t. (Related: if a link is focused, Enter activates it, Space doesn’t, just doing the normal scroll-down-one-page.)

Why should Enter being a different key be a different discussion?
if a link is focused, Enter activates it, Space doesn’t

It seems that you answered your own question: different keys, different purposes.

Enter is for "execute the focused action". Spacebar is for "operate the button".

Just diving in without full context, but, enter is often a completion action. Historically often a full carriage return. It often means "submit data".

So this could be the oddity

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.