ReadonlylistsThe keys of the items in each list, in display order, keyed by the list label, in display order.
ReadonlyheldThe key of the item being moved, or undefined if none is picked up.
ReadonlypendingThe key of the item dropped and waiting for its new order to be settled, or undefined if none is waiting.
ReadonlysettledThe key of the item whose wait ended last, or undefined if none ended since an item was last picked up.
ReadonlyfocusThe key of the item owing the focus, or undefined if none does: the item last picked up from the keyboard takes
the focus back whenever it is drawn afresh, in the list it is carried into or the one it is sent back to, until
another item is picked up.
ReadonlyactiveThe key of the item the keyboard last stood on, or undefined if none: the one item of the lists reached with
Tab, the others being reached from it with the arrow keys.
Marks the item the keyboard stands on.
The key of the item reached
Lists with item active
Picks up an item.
The key of the item to move
Optionalfocus: boolean
Whether the item is picked up from the keyboard, so that it owes the focus
Lists holding item, owing the focus to it if picked up from the keyboard and to no item otherwise,
with no item settled, or these lists if item is unknown, an item is already held, or a dropped one is
waiting
Carries the held item to a new position.
The label of the list to carry the held item into
The position the held item is to take in list, counted once the held item is taken out of its
current place; clamped to the positions available in list
Lists with the held item at index in list, or these lists if no item is held, list is unknown or
the held item already stands there
Drops the held item where it stands, leaving it waiting for the new order to be settled.
Lists holding no item, keeping the current order, with the item dropped waiting, or these lists if no item is held
Ends the wait for the dropped item.
Lists with no item waiting and the item dropped settled, in the order they had when the item was picked up, or these lists if no item is waiting
Sends the held item back to where it was picked up from.
Lists holding no item, in the order they had when the item was picked up, or these lists if no item is held
Headless sortable lists.
Holds a fixed set of labelled lists and the items each holds, offering the moves a reader performs on them: an item is picked up, carried to any position in any list, and finally either dropped, leaving it where it stands while the new order waits to be settled, or cancelled, restoring the order it was picked up from. No item is picked up while a dropped one is waiting, so moves are settled one at a time. Items are identified by keys unique across all lists, so an item keeps its identity wherever it is carried.
The lists stand for the gesture under way, not for the order an application keeps: once settled, a move restores the order it started from, and the order the application adopts arrives as new lists created from it.
A move yields new lists and leaves these as they stand, so lists read earlier keep their items and their order. One that changes nothing yields these lists themselves, which a rendering layer takes as nothing to redraw.