Trevor Parscal
5aa6f4b342
Fix bug in fixupInsertion()
...
When a text node was closed (either by encountering a non-text node or by reaching the end of the document), the fixupStack would not be processed. This led to attributes being dropped when nodes were split because of text being inserted into them
Change-Id: I41f6d20e0c1bfc8d8689b7e6325e724dd8156ab1
2012-06-08 12:23:58 -07:00
Trevor Parscal
acdd5679ec
Finish implementing ve.dm.Converter and document it
...
* Add code to handle elements and annotations
* Drop support for aliens from getDomElementFromDataElement() and move it into getDomFromData()
* Implement getDomElementFromDataAnnotation()
* Document a few functions
Change-Id: Ic6a418cbf9d7d1ad96299d7d3633970a876c6103
2012-06-07 21:58:56 -07:00
Trevor Parscal
cc0c490502
Fix typo in LinkAnnotation
...
Change-Id: Idfb969a73c59aef1acf54edd61d555cdc295534c
2012-06-07 21:16:55 -07:00
Trevor Parscal
f2b3df8027
Cleaned up some useless/unused functions
...
Change-Id: I6aa5d0ed3d21993ed653ee64b4928ef98874db2d
2012-06-07 15:02:40 -07:00
Rob Moen
e1b8f9422d
Fix bug in getAnnotationsFromRange where if the range length was 0
...
it would return no annotations.
Change-Id: Iec33366b2a1249122a21617d6681ae039557c2fe
2012-06-07 14:53:30 -07:00
Christian Williams
244551ff96
Updating model selection after cut and paste
...
Change-Id: Iefaec5a3d705c6caae76941bc05810152d870bb8
2012-06-07 14:48:46 -07:00
Trevor Parscal
453bec4555
Fixed alienInline and alienBlock conversion (was missing closings)
...
Change-Id: Ie8e51eb8d9a452c656aebf341071da5627dd80b5
2012-06-07 14:30:06 -07:00
Trevor Parscal
fa9fe8b08a
Added support for alienInline nodes
...
Change-Id: I15b9cbcdb66b966dca28edcb26bf5d54a4f17be6
2012-06-07 14:16:19 -07:00
Rob Moen
9fe6658a0e
Put getSelectionRect method back in surface view.
...
Change-Id: Iaec899bec157ef39810d391b2ed51d4f8fe3be9d
2012-06-07 14:13:55 -07:00
Rob Moen
4b940c3b19
Init rangy in case of Toshiba
...
Annotate button redraws selection after annotation
Added contextView hooks to select listener in toolbar.
Change-Id: I598fe715dd84976862eed63e4f55cb6bc6e75b18
2012-06-07 14:04:39 -07:00
Christian Williams
1f86885d47
Fixing copy and paste
...
Change-Id: I57ead6a6d831aa739df49960f97cb2f91f672730
2012-06-07 14:03:48 -07:00
Catrope
9cab267911
Fix some JS errors in the ve.ui code
...
Change-Id: I57057369f56dc20b56231ed4bbe34816c3c718d7
2012-06-07 13:29:14 -07:00
Catrope
3c1de3dc4f
Add ve.dm.Document.getBalancedData()
...
Change-Id: I2420ef5369b9eae053962898b64dd7324e714bbd
2012-06-07 13:17:57 -07:00
Catrope
feac2f6069
Factor out element cloning into a getClonedElement() function
...
Change-Id: Id6024c15d4d9c9141bc4e1afa39fce29992b8647
2012-06-07 13:17:57 -07:00
Inez Korczynski
6704b01e30
Merge branch 'dmrewrite' of ssh://review/mediawiki/extensions/VisualEditor into dmrewrite
2012-06-07 11:44:35 -07:00
Inez Korczynski
5c41fa2fb8
Define min-height for P and HX tags - needed when those tags are empty.
...
Change-Id: I0ba1c950cc06b3ff040c208c1b9a4970b2f73493
2012-06-07 11:44:05 -07:00
Trevor Parscal
18461387c0
Roan officially does not owe the team lunch (at this precise moment)
...
Change-Id: I90a6198da97ea90f60d9668c21d7386984a03ff0
2012-06-07 11:33:58 -07:00
Inez Korczynski
02f913a7db
Added accidently removed registrations for events handling.
...
Change-Id: I6e5df649909b025f7e7aeb35ff9e8ff0b7fcd5f9
2012-06-07 11:10:08 -07:00
Inez Korczynski
97001e1301
Improvements to selection mechanism.
...
Change-Id: I031dd3493832034c985b15bf213cafe2c4813136
2012-06-07 11:03:22 -07:00
Inez Korczynski
95297a2c73
Delete from ce.BranchNode code that is not needed anymore.
...
Change-Id: I64f869a9fd54d089d2c6a31d827ddaccb9ece900
2012-06-07 11:02:59 -07:00
Inez Korczynski
f711d78d4d
Merge branch 'dmrewrite' of ssh://review/mediawiki/extensions/VisualEditor into dmrewrite
2012-06-07 10:58:42 -07:00
Christian Williams
51aa317df3
Undo and Redo support
...
Change-Id: Icdbebccefe3cc162b9ff6c0d978d5e4fc1f2c561
2012-06-06 20:28:06 -07:00
Inez Korczynski
d96db8dce7
Merge branch 'dmrewrite' of ssh://review/mediawiki/extensions/VisualEditor into dmrewrite
2012-06-06 18:50:02 -07:00
Catrope
d8359da409
Change calls to getElementType() (which doesn't exist) to getType()
...
Change-Id: I894835a0178beddce480c48917700090b31c80b2
2012-06-06 18:03:55 -07:00
Rob Moen
232f2c58f7
Fix linkInspector tool
...
Change-Id: I89fa17b1a72c3f45bce5a11b49aa5445c5990f68
2012-06-06 17:50:01 -07:00
Trevor Parscal
b62beed2e2
Added implementation for ve.dm.Converter.getDataFromDom
...
Change-Id: I8561d4a00ba630b86fb7bcd3e347fe2c6c2f6aa3
2012-06-06 17:47:27 -07:00
Rob Moen
8db70ed263
Annotation buttons now working
...
Created new document method to determine if a specific annotation
object is inside an annotation array.
Change-Id: Id645929cbf31030b8b0fcacb8dfb36e61aaad129
2012-06-06 17:06:37 -07:00
Christian Williams
77d5cae575
Consecutive spaces
...
Change-Id: I3f51ce0a2ee0a78e56c55de94bd45796b400680d
2012-06-06 16:29:02 -07:00
Catrope
5e47bdc57f
Maintain a transaction-wide offset adjustment
...
This fixes a bug where the second replace operation in a transaction
would cause the rebuild of the wrong range, or the adjustment of the
wrong text node.
Change-Id: I9b1c68d84999d538fe10bb193f4dfdd694121d2a
2012-06-06 15:34:55 -07:00
Catrope
02b19f337f
Add zero-length text nodes to empty content nodes
...
This is needed to make the results of certain transactions' tree sync
round-trip cleanly through the ve.dm.Document constructor
Change-Id: I2ab0758ec6bd7afba5b6645c7330f9fa2d45205d
2012-06-06 15:33:42 -07:00
Catrope
ae3d31d447
Shallow-copy annotation objects in HTMLConverter
...
This fixes an annotation contamination issue that was causing Rob's
tests to throw exceptions
Change-Id: Ic5171d600b0b2ff97cc569e1e6f9488fab177c7c
2012-06-06 12:21:01 -07:00
Catrope
e524152319
Fix typo in variable name
...
Change-Id: I6772555da86a186ec2421d01f82de14463061362
2012-06-06 12:20:05 -07:00
Rob Moen
337e9b8eee
Merge branch 'dmrewrite' of ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor into dmrewrite
2012-06-06 12:02:22 -07:00
Rob Moen
21ee17a192
Fix up some tools to not break on selection, added some test selection
...
stuff to sandbox
Change-Id: Ic97144e634111c489507814c6634c66831726191
2012-06-06 11:51:19 -07:00
Catrope
1429a3da59
Rewrite newFromRemoval() using 'covered' mode
...
Change-Id: If0736aff6d194ec09c2a109f046dd6362ddc64fb
2012-06-06 11:47:35 -07:00
Catrope
1566306937
Add 'covered' mode in selectNodes
...
Change-Id: I4d24c011ce7a94bc75508dea410fb0ed9ebce6a1
2012-06-06 11:47:35 -07:00
Catrope
244349aedb
Fix stupid typo in selectNodes()
...
Change-Id: I1e308c9f3a6e6eb8fe7fe8ae3c6abf7cc3a84d09
2012-06-06 11:47:35 -07:00
Catrope
d39fb9dd1c
Make pushReplace([], []) do nothing
...
Change-Id: Ifa8df99f376ce22add9d06e76831e8b661e6ddbf
2012-06-06 11:47:35 -07:00
Rob Moen
2439c0149a
Created secondary method for getMatchingAnnotations
...
new static method looks for annotation in annotation object.
ve2 Cleanup on annotate method and surface model.
Partially revive UI tools by exchaning old method usage
for ve2 methods.
Change-Id: Id0ac58330292d76801bbcf1d71a919b493f8ab9e
2012-06-06 11:27:23 -07:00
Trevor Parscal
5d20f45120
Added getHtmlElementFromDataElement and getDataElementFromHtmlElement
...
Change-Id: Ie5f4fd86612b5a6c34b5843d1e9a521edc626a63
2012-06-06 10:17:51 -07:00
Catrope
d378182bff
Reapply typo fixes from c0e1991
, were undone in b0f6f64
...
Change-Id: If84e13b91781ed96d3bd9e94171e16020c65ea42
2012-06-05 06:54:35 -07:00
Catrope
528728558b
Fix bug in selectNodes's logic for traversing back up the tree
...
Change-Id: I0fc5a2ad2c9a8d162e8ddbf3cc6d31684d364928
2012-06-05 06:50:09 -07:00
Trevor Parscal
b0f6f64d90
Made pushRetain do nothing if you give it 0 and throw an exception if you give it a negative length
...
Change-Id: Ib9955660b05a04503325ddb20f9e9a525b4d6832
2012-06-04 16:27:33 -07:00
Trevor Parscal
9111e34a0b
Added nodeOuterRange to selectNodes
...
Change-Id: I9ef0c383fbb2515c752d2d3c52e8632aac73d811
2012-06-04 16:21:29 -07:00
Catrope
c0e19915ef
Typo fixes and missing 'var' in newFromRemoval()
...
Change-Id: Ibb984d862670b5386ff76fc55ef3322f695b6ae1
2012-06-04 16:07:16 -07:00
Catrope
db793009be
fixupInsertion() variable documentation and cleanup
...
Functional changes (fixes):
* Make writeElement() also update parentNode and parentType for openings
* Also add to fixupStack when opening a wrapper for a text node
Non-functional changes (cleanup&docs):
* Document all variables at the beginning of the function
* Group variables according to where/how they're used
* Move expectedType into writeElement()
* Kill node, duplicates parentNode unnecessarily
* Kill paragraphOpened, was misnamed and unnecessary
* Rename closedElements to reopenElements
Change-Id: Ie5b4e4f30b267943048fdc170accb29139039192
2012-06-04 16:07:16 -07:00
Catrope
f7445b37b8
Retain attributes when reopening closed nodes
...
* Push entire elements onto openingStack rather than type strings
* When closing an element, build a clone of the opening and push it onto
closedElements, then insert that clone when reopening the element
Change-Id: I8b0fb44394aed6c471dc6dacaab03e44c2333733
2012-06-04 16:07:16 -07:00
Catrope
b167453f0d
Add ve.dm.Node.getAttributes() to get a reference to the attributes object
...
Change-Id: Ic2463d4f7053a5f6defd212f04deb5ea71542843
2012-06-04 16:01:14 -07:00
Catrope
109624e8b3
fixupInsertion fixes, wrapping content works now
...
Change-Id: I1eee6afcffbf09955578b7f0534aa5b7234802df
2012-06-04 16:01:13 -07:00
Rob Moen
fd5eb80dd7
Document annotate method in surface model.
...
Comment cleanup
Change-Id: Ifd3eeab9046f376529a827dfafdc28506845ac15
2012-06-04 15:06:37 -07:00