mediawiki-extensions-Visual.../modules/ve/dm/nodes
Roan Kattouw 7673a39878 Support previews and concurrent updates in ce.GeneratedContentNode
GeneratedContentNode didn't track concurrent updates at all, so a
race condition was possible: if the node was updated a second time
before the first update had been rendered, the second update might
render first and then be overwritten by the other one.

To prevent this, we track the promise associated with the current
render. If a new update is launched while a previous one is still
pending we attempt to abort the old one by calling .abort() on it,
and ignore any future resolution or rejection from it.

Also allow rerenders based on non-model data by calling
.update( { config object } );

Change-Id: I8feefd9e8fb6c41d06b8b20131e3be5e37954e83
2013-08-08 11:34:50 +08:00
..
ve.dm.AlienNode.js ve.copy: Remove obsolete copyArray and copyObject 2013-07-30 01:44:22 +02:00
ve.dm.BreakNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.CenterNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.DefinitionListItemNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.DefinitionListNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.DivNode.js Add support for <div>s as user-editable blocks 2013-04-30 18:43:41 -07:00
ve.dm.DocumentNode.js Store DM nodes in InternalList 2013-06-03 22:10:07 +01:00
ve.dm.GeneratedContentNode.js Support previews and concurrent updates in ce.GeneratedContentNode 2013-08-08 11:34:50 +08:00
ve.dm.HeadingNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.ImageNode.js Image node refactor 2013-04-10 14:56:08 -07:00
ve.dm.InternalItemNode.js Add data model support for MediaWiki references 2013-04-23 10:17:42 +01:00
ve.dm.InternalListNode.js Add data model support for MediaWiki references 2013-04-23 10:17:42 +01:00
ve.dm.ListItemNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.ListNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.ParagraphNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.PreformattedNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.TableCaptionNode.js Add TableCaptionNode 2013-04-26 14:09:54 -07:00
ve.dm.TableCellNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.TableNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.TableRowNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.TableSectionNode.js Actually use the doc parameter in toDomElements() 2013-04-09 23:48:03 +00:00
ve.dm.TextNode.js Use static.name once for ce and dm nodes 2013-03-07 17:19:39 -08:00