Hitting Escape while editing a field does not cancel the value but applies it
I don’t know why nobody reports this...
If I input something in a field and I want to abort and return to the previous value, I hit Escape.
Sometimes the first Escape closes the suggestions dropdown (like in browsers), and only the second one restores the previous value.
A LOT of apps follow this rule except browsers:
Affinity Designer, Inkscape, CorelDRAW, Blender...
Non-design ones too: MS Office, Google Docs, various text editors... A LOT.
Some apps keep the value entered, but don’t apply it, and put the old one back when an object get reselected — Xara does it.
Some apps though do apply the entered value on Escape the way Ai does it — like 3DS Max.
Why Ai doesn’t follow the major rule about the only exception when a user-entered data is aborted, and prefers to force us to Undo?
Only Tab and Enter should be treated as committing a value. Escape should abort entering and drop the entered value, since we neve Enter it.
-
iviansur commented
I believe pressing the Esc key should revert the newly typed value to the previous value and keep the input field focused. This is helpful if you have entered the wrong value, as you can press Esc instead of holding backspace/delete and then type something different. Pressing Esc twice can be used to remove focus from the field.
-
Vladimir Miroshnikov commented
I don't think this should be a toggle option. We already have a ton of toggle options never used by anybody. Using escape to actually escape should be default, and the current behaviour just makes no sense.
-
Plus the Escape key is just not given to plugins to handle, and they can’t use it to neither commit or cancel the input.
-
This should be an option we can toggle.
The option can help to let users choose what to do with large inputs.
Take a look at how Photoshop handles it in Preferences > Type: Use ESC key to commit text (plus notice They Don’t Capitalize All Like Ai does).The same thing should be in Illustrator, for BOTH type inputs on canvas AND value inputs.