mediawiki-extensions-Visual.../modules/ve
Catrope 04516bb02e Whitespace preservation was broken after the first run
The first run of getDomFromData() would preserve whitespace just fine,
but it blanked out the .veInternal.whitespace[1] element in certain
cases, contaminating the linear model and making the whitespace data
inconsistent. Subsequent runs of getDomFromData() would then refuse to
serialize that whitespace because the information about it was
inconsistent.

In getDomFromData(), we sometimes unset .veInternal.whitespace[1] (i.e.
set it to undefined) to prevent double processing. Because we're
potentially going to modify .veInternal, don't assign it by reference,
but copy the object.

Added tests asserting that the linear model is unchanged after calling
getDomFromData(), because that function should never modify
linear model data. This test failed in 4 cases (all whitespace-related)
before I added the copyObject() call.

Bug: 43543
Change-Id: Ic4c93510518163894201a693ab50331413715967
2013-04-17 11:28:05 +00:00
..
actions No more confusing boolean argument for closing windows 2013-04-10 12:31:49 -07:00
ce Merge "Inside ve.ce.Document.getRelativeOffset fallback to 'character' mode if 'word' mode returns the same offset as was passed originally" 2013-04-16 22:54:27 +00:00
dm Whitespace preservation was broken after the first run 2013-04-17 11:28:05 +00:00
init Add ve.ce.View as a common base class for ce.Node and ce.Annotation 2013-04-09 12:05:05 -07:00
styles Toolbar style fixes 2013-03-15 12:48:49 -07:00
test Whitespace preservation was broken after the first run 2013-04-17 11:28:05 +00:00
ui Filter our zero-coverage updateState nodes 2013-04-14 02:50:01 +00:00
ve.Action.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.ActionFactory.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.BranchNode.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.CommandRegistry.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.debug.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.Document.js Emit a transact event on the ve.dm.Document when a transaction occurs 2013-03-14 23:35:50 -07:00
ve.EventEmitter.js Fix documentation to place @emits in the correct place 2013-03-25 21:06:05 +00:00
ve.Factory.js Remove more periods 2013-03-20 22:55:50 +00:00
ve.js Fix for custom hash with keys in different order 2013-04-09 00:20:44 +01:00
ve.LeafNode.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.NamedClassFactory.js Rename ve.NodeFactory to ve.NamedClassFactory 2013-04-09 12:05:05 -07:00
ve.Node.js Move common Node/Annotation/MetaItem code into ve.dm.Model 2013-04-09 12:05:05 -07:00
ve.Range.js Clickable inline images 2013-04-08 17:58:46 -07:00
ve.Registry.js Document and clean up events in all the things 2013-03-20 09:58:27 -07:00
ve.Surface.js Store data in LinearData class with an index-value store for objects 2013-03-30 10:06:34 +00:00
ve.Trigger.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00
ve.TriggerRegistry.js Bump copyright notice year range to -2013 over -2012 2013-02-19 15:37:34 -08:00