Skip to main content

Module history_face

Module history_face 

Expand description

How an app presents its own changes in the shared History view.

History is one service: every app’s changes are listed, grouped, filtered and restored by the same timeline. What a change was is the app’s to say. By default a change reads as its sentence (“Changed Formula of y = x”), from the action that made it. An app whose changes are things a person recognises by sight — a calculation, a plotted function — gives the timeline a HistoryEntryPresenter: for each change it may answer an EntryFace, the row drawn in the app’s own typesetting, what Copy puts on the clipboard, and whether choosing the row takes it up in the app instead of previewing the version.

A presenter sees only the change’s recorded facts (HistoryEntry: its action, the item and the values it named). It never reaches the live document, so a row reads the same for every member, whoever made it.

Structs§

EntryFace
One change as the app presents it.

Traits§

EntryBody
The content of one History row, painted by the app inside the row’s content slot (beside the author, before the time).
HistoryEntryPresenter
An app’s presentation of the changes in its History. Asked once per listed change each time the list changes, so answering is cheap: it reads the entry’s facts, nothing else.