mediawiki-extensions-Visual.../modules/ve-mw
Ed Sanders 76caef6b4b Use session storage to auto-save
Ensure we start with the same HTML (i.e. if an edit has
been made since the crash-recovery):
* Whenever an article target is activated, stash the initial
  document html, other parsoid response data, and the request
  parameters (pageName, mode, section) in session storage.
* Whenever an article is fetched through the target loader,
  recover from session storage if the request parameters match.

Store transactions:
* On document transaction (debounced) append the latest
  changes to session storage.
* If a document state is recovered from session storage,
  attempt to re-apply the stored transactions.

Clear transactions:
* Whenever the target is torn down (i.e. save, deliberately
  closing the editor to go back to read mode)

Other:
* If writing to session storage fails once, disable future
  attempts for that session (assume storage quota exceeded)
* Disable tempWikitextEditor when recovering. We don't have
  the transaction code loaded yet to perform the recovery.

Bug: T57370
Depends-On: I3832243fc347a99641fcb7e39a887a153c9a3b22
Depends-On: I448fb566fe9f7f5b5a76e88b70ca000e3d35b415
Change-Id: Id9d877f903cf4796a52f90991c030417a9f8786f
2018-02-27 12:19:06 +00:00
..
ce Merge "ve.ce.MWGalleryNode: Ensure we always have a focusable element" 2018-02-22 00:33:23 +00:00
dm Always set sourceMode=true on dm.MWWikitextSurface 2018-02-27 12:19:06 +00:00
init Use session storage to auto-save 2018-02-27 12:19:06 +00:00
tests MWImageNode: getHashObject -> getHashObjectForRendering 2018-02-24 12:44:53 +00:00
themes doc: Bump copyright year 2018-01-03 17:45:07 +00:00
ui ve.ui.MWGalleryDialog: Handle galleries with 0 items 2018-02-21 22:11:41 +01:00
ve.MWutils.js Load modules for preview 2018-01-29 22:35:00 +00:00