Default controls
Mod is Command on macOS and Control on Windows/Linux. Defaults are not imposed
over a saved or PHP-configured alternative; shortcut help shows the effective
current bindings. Older X / Shift + X selection examples are not the current
defaults.
A complete interaction
- Leave the search/input/editor field so the table can receive workspace keys.
- Press
Jto highlight the first record; pressJ/Kto move the highlight. - Press
Ato toggle that record’s bulk selection. - Press
Mod + Ato select the current page. Pressing it again keeps that page selected; it does not toggle everything off or select the entire database. - Use the table’s native deselection control to clear selected records, or
Ato toggle a highlighted row. - Open the native bulk-action UI to perform an authorized action. If that action has an enabled recovery profile, its resulting notice offers Undo.
Enable, disable or rebind table controls
null to disable
an action, or disable the whole table enhancement:
Keep native action behavior
Configure the table normally. For example, within a Resource’stable() method:
keyBindings():
exportSelectedRecords() in your application. Rendered
native bindings take priority over extra workspace commands; FLEX includes their
metadata in help without replacing native action execution.
Multiple tables and focus
The table containing the current target/focus is preferred. Otherwise the last active visible table is used, or a single unambiguous visible table. In a page with multiple unrelated tables, focus/interact with the desired table first. Table-local row state does not leak to a different table. Text inputs, textareas, native selects, rich/code editors, shortcut recorders, active menus/popups and native dialogs keep their own key handling. IME, composition input and ordinary text Undo are preserved. In an input,Mod + A selects text and Mod + Z undoes typing; they do not select rows or
recover a record.
Contextual help
Undo is opt-in
Mod + Z does not make arbitrary operations reversible. Enable a profile for
supported models and columns first:
Post must use native SoftDeletes for delete/restore recovery. Native
EditAction can restore its declared columns; native Delete/Restore and their bulk
variants require soft-deleted models. Hard deletion, relation operations and
custom business actions need an explicit adapter. Edits saved on an EditRecord
page are not automatically captured by this Action integration.
Read Recovery for inverse policies, conflict checks,
batch limits, cache storage and expiration. Read
Keyboard controls for recording and all other commands.