mediawiki-extensions-Visual.../modules/ve/test/dm
Catrope 63e6702c52 Strip and preserve inner leading&trailing whitespace in the linear model
This makes things like
== Foo ==
* Bar
render without the leading and trailing spaces, while still
round-tripping those spaces.

* Added a .fringeWhitespace property to the linear model and ve.dm.Node
** Object containing innerPre, innerPost, outerPre, outerPost
** Only inner* are used right now, outer* are planned for future use
** Like .attributes , it's suppressed if it's an empty object
* In getDataFromDom():
** Store the stripped whitespace in .fringeWhitespace
** Move emptiness check up: empty elements with .fringeWhitespace have
   to be preserved
** Move paragraph wrapping up: .fringeWhitespace has to be applied to
   the generated paragraph, not its parent
** Add wrapperElement to keep track of the element .fringeWhitespace has
   to be added to; this is either dataElement or the generated paragraph
   or nothing, but we can't modify dataElement because it's used later
* In getDomFromData():
** When processing an opening, store the fringeWhitespace data in the
   generated DOM node
** When processing a closing, add the stored whitespace back in
* In the ve.dm.Document constructor, pass through .fringeWhitespace from
  the linear model data to the generated nodes

Tests:
* Change one existing test case to account for this change
* Add three new test cases for this behavior
* Add normalizedHtml field so I can test behavior with bare content

Change-Id: I0411544652dd72b923c831c495d69ee4322a2c14
2012-08-10 17:23:53 -07:00
..
nodes Kranitor #1: On-boarding 2012-07-27 14:40:00 -07:00
ve.dm.BranchNode.test.js Puttin' em white-spacers where they aught'a be 2012-08-06 18:52:19 -07:00
ve.dm.Converter.test.js Strip and preserve inner leading&trailing whitespace in the linear model 2012-08-10 17:23:53 -07:00
ve.dm.Document.test.js Clean up a few commas and some indentation 2012-08-10 16:49:14 -07:00
ve.dm.DocumentSynchronizer.test.js Kranitor #1: On-boarding 2012-07-27 14:40:00 -07:00
ve.dm.example.js Strip and preserve inner leading&trailing whitespace in the linear model 2012-08-10 17:23:53 -07:00
ve.dm.LeafNode.test.js Kranitor #1: On-boarding 2012-07-27 14:40:00 -07:00
ve.dm.Node.test.js After much research on error objects, native = good, custom = bad 2012-08-08 10:48:53 -07:00
ve.dm.NodeFactory.test.js After much research on error objects, native = good, custom = bad 2012-08-08 10:48:53 -07:00
ve.dm.Surface.test.js Clean up: Single quotes 2012-08-07 07:02:01 +02:00
ve.dm.Transaction.test.js Make use of new jshint options 2012-08-10 02:50:30 +02:00
ve.dm.TransactionProcessor.test.js Make use of new jshint options 2012-08-10 02:50:30 +02:00