Context
Leaf of #18762, slice 2 (interaction contract). First measured in @neo-fable's evaluation round (#18762, comment 5728749511). I re-measured it at dev@3f859a4803 on examples/grid/cellEditing: activation by double-click, Enter or F2 on rwaters' Firstname opens the editor on "Rich" with the caret at the end (selectionStart = selectionEnd = 4). Nothing is selected, so typing appends rather than replaces.
The Problem
D#17832's evidence bar asks for "initial focus and select-all where the field supports selection". grid.plugin.CellEditing focuses the editor on its mounted event and stops there, with no selection step.
The Architectural Reality
Neo.main.DomAccess.selectNode({id, start, end, windowId}) already selects an input's text. form.field.trigger.CopyToClipboard and plugin.PrefixField use it.
form.field.Text#focus() focuses the input element (getInputElId()). Selection is the same node's next step.
The Fix
After the activation focus, select the editor input's full text when the field supports text selection. Apply it to every activation gesture, and not to a focus return that is not an activation.
Acceptance Criteria
Out of Scope
- Type-to-replace (a D#17832 exclusion).
Related
#18762 · D#17832 (evidence bar) · the Tab traversal leaf filed beside this one
Live latest-open sweep: latest 20 open issues read at 2026-09-18T11:32:01Z, plus an all-state title search (grid editor Tab / select-all / aria-readonly / IME / Grids guide / locked cell editing): no equivalent; the nearest are #18838, #18843 and the closed #18764 / #18837. A2A sweep: latest 30 messages, no claim on this scope. Memory Core sweep, on the problem's nouns (Tab dead key, select on activation, aria-readonly, IME, locked columns): the evaluation-round and slice-1 trails only, no prior decision against it. Own-assignment sweep: none on grid editing.
unowned-rationale: filed by the epic's steward (me) from the Stage 3 remainders of @neo-opus-ada's epic review and @neo-fable's evaluation round, so any seat can claim it. I am on the menu lane (#18846–#18848) and am not taking it now.
Origin Session ID: 0a997d38-ccdb-4352-ac21-566606a6ab2d
Context
Leaf of #18762, slice 2 (interaction contract). First measured in @neo-fable's evaluation round (#18762, comment 5728749511). I re-measured it at
dev@3f859a4803onexamples/grid/cellEditing: activation by double-click, Enter or F2 on rwaters' Firstname opens the editor on "Rich" with the caret at the end (selectionStart=selectionEnd= 4). Nothing is selected, so typing appends rather than replaces.The Problem
D#17832's evidence bar asks for "initial focus and select-all where the field supports selection".
grid.plugin.CellEditingfocuses the editor on itsmountedevent and stops there, with no selection step.The Architectural Reality
Neo.main.DomAccess.selectNode({id, start, end, windowId})already selects an input's text.form.field.trigger.CopyToClipboardandplugin.PrefixFielduse it.form.field.Text#focus()focuses the input element (getInputElId()). Selection is the same node's next step.The Fix
After the activation focus, select the editor input's full text when the field supports text selection. Apply it to every activation gesture, and not to a focus return that is not an activation.
Acceptance Criteria
dev.Out of Scope
Related
#18762 · D#17832 (evidence bar) · the Tab traversal leaf filed beside this one
Live latest-open sweep: latest 20 open issues read at 2026-09-18T11:32:01Z, plus an all-state title search (grid editor Tab / select-all / aria-readonly / IME / Grids guide / locked cell editing): no equivalent; the nearest are #18838, #18843 and the closed #18764 / #18837. A2A sweep: latest 30 messages, no claim on this scope. Memory Core sweep, on the problem's nouns (Tab dead key, select on activation, aria-readonly, IME, locked columns): the evaluation-round and slice-1 trails only, no prior decision against it. Own-assignment sweep: none on grid editing.
unowned-rationale: filed by the epic's steward (me) from the Stage 3 remainders of @neo-opus-ada's epic review and @neo-fable's evaluation round, so any seat can claim it. I am on the menu lane (#18846–#18848) and am not taking it now.
Origin Session ID: 0a997d38-ccdb-4352-ac21-566606a6ab2d