New changes:
b74276f Fix <br> sanitization.
2cb48b6 Use try-finally instead of try-catch-rethrow
3c3ec31 Try text fallback for drag and drop even if exception not thrown
af66347 Localisation updates from https://translatewiki.net.
1e6aa55 Ignore covering annotations when importing source
5dd073c Follow-up 2cb48b6: Add a comment explaining why we're not re-throwing
Bug: T153223
Bug: T153315
Change-Id: Id8c0cd35b4f4d989c65a556e843eed0438aa59b0
New changes:
2a24fdd CommentInspector: Remove redundant surface enable call
45c3931 Allow ve.resolveAttributes() to take a single element
c5a5cef Give ui.Surface a focus method
721f591 Ensure content is selected after async source insert
Bug: T152645
Change-Id: I50f6c359818f8e40ac080eef4edd1d9698735064
New changes:
98e3ee8 Update OOjs UI to v0.18.2
7a7e576 Move socket.io-client into lib
9be803f ce.Surface showSelectionState: Avoid unnecessary refocusing
fa9570e ve.ui.TableAction.test.js: Make formmatting pass in eslint 3.12.0
65564a2 Follow-up Iaa41c49e: Don't assume source dialogs have a fragment
43acec4 ui.TableAction: don't try to add cells if none have been provided
33012af Update UnicodeJS to v0.1.6
Bug: T150450
Bug: T152387
Bug: T152659
Change-Id: Icb25c05fef4719fba464ba6b0f349de85f01f24d
New changes:
220713c Basic unit tests for article/section nodes
42134b7 Bypass fragment parsing for non-fragment windows
8d1ec6b Fix #insertContent in source mode to maintain linebreaks
9bebc0f Surface synchronizer (sockets)
4324301 Localisation updates from https://translatewiki.net.
c8f4867 Simple document server
a1fe22d Run eslint on rebaser folder
c4c1809 Fix build modules for rebaser
606b4a8 Add landing page to rebaser demo
327a277 Rebaser: Focus document name input on load of landing page
Change-Id: I57975ea090e2e905e5a78b2a715141636dca4748
New changes:
8803030 Use faster batchPush in #insertContent
c011ae2 Don't wait for fragmentPromise before closing open windows
3dae2ca Follow-up Iaa41c49e: Ensure hack range is valid
Change-Id: Iaf7b623295eed23e46c12407fc7c0b6f371a92a5
New changes:
a27ccb4 Follow-up I3b0483a7d: Fix append loop in PreviewElement
75d6de7 PreviewElement: Use adoptNode when moving rendering to view
Bug: T151511
Change-Id: I6bf6df1873b8033914bc2235784012b66459e341
New changes:
06ffd06 Rebase logic
56d8e13 Use DOMPurify to sanitize incoming HTML
abc3465 DOMPurify: Use pre-release & add fix, and fix IE9 return type issue
14700eb Bring in source mode WindowAction hacks from MW
Change-Id: Iaef73bab7c1010ec29826ff2025c767c9758e8e3
New changes:
f58ddea DiffElement: Use document slices with full internal lists
83800c0 DebugBar: Remove hard-coded i18n
b4f89e1 Update OOjs UI to v0.18.1
40c7bf6 Factor out active node functionality from SectionNode for captions
2d967be Move 'mode' property to surface, rename target property to 'defaultMode'
5d8c214 wrapAllNodes in sourcefragment
dd3d9e5 Refactor ve.dm.Transaction
9d61aca Use canonical ve.dm.TransactionBuilder.static.newFrom* methods
df4f72a Make table caption node an active node
b79f72d Core source mode
7533ac4 Localisation updates from https://translatewiki.net.
ae30d71 SourceSurfaceFragment: Check range is not collapsed
Local changes:
Get edit mode from surface where possible
Depends-On: Iec758c1892d518ad4bc2c0d1aaf6ca00fa354323
Change-Id: Ifaf6a26078b2731b374aaad2cb40c08928de9c84
New changes:
f1297b8 [BREAKING CHANGE] Allow target widgets to be re-used
Local changes:
Re-use target widgets
Change-Id: I5decb918f398704d4b6c108a16fbc1cc073ef077
New changes:
00efc39 VisualDiffs: Improved styling for moves
009de03 VisualDiffs: Use semantic del/ins tags
4a90e12 Localisation updates from https://translatewiki.net.
c671cf8 Add diffing to mobile SA demo
c4ff29b Replace deprecated $.andSelf with $.addBack
b122328 Fix labels on diff dialog
41a700c ve.dm.Change class with rebase operations
2c336da Localisation updates from https://translatewiki.net.
4c7cb68 Hijack EventSequencer timeouts in unit testing
dea2883 Focusable cursor tests: place cursor in cursorHolders
Change-Id: Id6640e02999c079bcf3709f2d048394ec6719904
New changes:
d68bd23 DiffDialog: Use surface dialog manager for diff window
d68fe24 VisualDiff: Replace whitespace detection with wordbreak detection
dd65a44 VisualDiffs: Only show unchanged content adjacent to changed content
7f70f64 Fix some edge cases with adding classes to nodes in diff
f4d2cd2 Follow-up d68bd23: No need to list ve.ui.DiffDialog twice in modules.json
Change-Id: I6f46f3d14ad81e4efdde0c970a3102e577b12772
New changes:
65399fa Localisation updates from https://translatewiki.net.
0ef16f0 Follow-up Ice6b167: Ensure metadata is inserted before the internal list
Change-Id: Ieb967a1e2e6f3a90ed26d25715e41cb9a3dbcb44
New changes:
6f28f19 build: Bump eslint-config-wikimedia to v0.3.0 and make pass
270fda6 Make $returnFocusTo a no-op in WindowManager
Bug: T150556
Change-Id: Iad3959fa836afd5b81ef9f668077d68effc69063
New changes:
e9b392a dm.Surface: contextChange if non-collapsed selection moves in/out of annotations
efa129c Add HTML blacklist for content which doesn't have a model type yet
Bug: T126232
Bug: T149714
Change-Id: I456ed4dbd0ed0452e58d554f5c88a82c1bf2bb26
New changes:
408a212 Fix and improve performance of shallowCloneFromRange( undefined )
6f01d52 Return an empty document when shallowCloneFromRange is collapsed
e0fb3a3 Skip toolbar rebuild when config hasn't changed
00ffe0f Avoid annotation set clones when unused
e839b94 Add teardownToolbar to ve.init.Target
869e458 Cache this.getToolbar
e0ba022 eslint: Re-enable wrap-iife and partially enable dot-notation
15518fa Wrap attribute resolve in try-catch for IE
Change-Id: I404d3b098232be920a2f72a5281bf5c04b85aae1
New changes:
e03fbf0 ce.Surface: Tougher check on whether cursorHolders are still in-document
708aa36 Localisation updates from https://translatewiki.net.
c532815 Fix IE hack classes to run on the correct versions
Change-Id: Ie780b0287664f89815482e4632c4aac86843a1dc
New changes:
66291ea Converter: Remove internal during the main loop
99172f5 Remove unnecessary double-negation cast in if()
349f341 Refactor diff element getChangedNodeHtml
2885ec2 LinkAnnotationWidget: Don't use deprecated TextInputWidget#setRTL
c235d13 LinkAnnotation{Inspector|Widget}: Stop using deprecated TextInputWidget#isValid
5f569e4 Update OOjs UI to v0.18.0
Change-Id: Iba3908fd3aec62c8c770346dd01714c41c7a87a0
New changes:
e9866f4 Replace reference to current doc with this.newDoc
fa5a575 Add test framework for diffElement
2f6969c Use shallow copy for internal list data inside shallowCloneFromRange
866b2c0 Don't bother testing data on direction key tests
88ba26b Avoid jQuery in PreviewElement and ve.resolveAttributes
Change-Id: I7adb57898fa7cecd6a412183c4ca0726ef1a00ae
New changes:
b2970d6 Remove #rebuildTree calls and ensure #getDocumentNode is used
4d3231d Extract DM document from node instead of passing it as argument
5827a4c Update treeDiffer library & remove all but dist, licence & readme
4200362 Fix typo in getModifiedRanges
9a4edb7 Fix behaviour of attribute change in getModifiedRange
c5c7d83 Localisation updates from https://translatewiki.net.
993200a Add includeCollapsed & includeInternalList options to getModifiedRanges
566c7af Add ve.Range#overlapsRange method
4a3afce Remove unused eslint exceptions and old jshint comments
db44a3d Fix splice typo
7a4de14 Fix translateRange bug that expands selections
e7c5b56 Localisation updates from https://translatewiki.net.
Change-Id: I4af5647b9f49525c9c592ab42270f302144d76c9
New changes:
f564149 ve.dm.Transaction: add 'author' field
4032768 Remove jshint comment, no rule required
3705e38 Remove comment about jscs empty blocks rule
09c48db Remove comment about jscs binary space rule
1f2fcde Allow shallow clone of whole document
b8c3673 build: Update eslint-config-wikimedia to 0.2.0 and make a pass
f31a1f8 Re-use eslint.main for eslint.fix
78acdbe Add LICENCE.txt for classList lib
0d92f39 jsduck: Move UnicodeJS and OOUI into Upstream
d0c4225 Remove rules which have been moved upstream
31126aa Fix ve.test.utils.createSurfaceFromHtml
a1036e0 Make it possible to see visual diffs in VE core
3a1bc70 Diff style tweaks
977d3ad build: Move diffing code to its own module for slimness
Change-Id: I82da0beb9bdb05f482ddfa76b4f95563d2499f1e
New changes:
e4c8003 Bring in target 'mode' property from MW
Local changes:
Use upstream Target#setMode functionality
Depends-On: I9d501cb77c714fbd299b5816d302b0bdde7833cd
Change-Id: I2fcda6ca7d82d880101d9ba2a027d4ef066aa238
New changes:
7c10516 Cleanup ElementLinearData#sanitize
ff79ed5 Fix margins around progress dialog rows
7b8652b Localisation updates from https://translatewiki.net.
60e14a5 Method to rebase a transaction onto another
10f4ad7 Fix typo in ve.dm.LinearSelection
8d0bff6 Apply inserted annotations above background annotation stack
0c0ebc9 Human-readable transaction summary, for debug
3f4706c Apply platform language to SA target
b5e542c Ignore <br>s used to keep empty branch nodes open
f91512f Follow-up e3192e2d3: properly fix layout thrashing in updateInvisibleIcon
ea3bf6d build: Switch from jshint and jscs to eslint
71897cc Fix documentation to pass eslint valid-jsdoc
2b27876 Enable eslint:valid-jsdoc with exceptions for @chainable
f31b1fa Don't position inspector using selection from wrong document
1fc44bf doc: Fix up last jscs/jshint remnants, comment where retained
Change-Id: I8682263591968713c1ebdea218181bb40634cbb4
New changes:
689ea49 ve.Range: Don't fixup invalid arguments
4aaf809 ve.sparseSplice: Splice one array into another, replicating any holes
775e341 Check previousSelection is set before setting it
Change-Id: I989c15a81a8dd057af436e0dee667b6f82e54be5
New changes:
abf8f41 Replace Array#concat with Array#push in converter
02aeb90 Localisation updates from https://translatewiki.net.
902ddda Use safer batchPush in converter
6368191 Use current surface's sequence registry in command help dialog
f7ce4b9 Optimize batchPush on small lists
fb43a0a ve.batchPush: add unit test to exercise long-array path
d6c7d24 Factor out RESTBase ID regular expression
ffcbf4b IndentationCommand: Use hasMatchingAncestor
d447023 Allow ommission of range from ve.dm.Document cloneFromRange
cfbc344 Don't strip empty paragraphs on paste if they are generated
01c918b Localisation updates from https://translatewiki.net.
1467947 Fix documentation of getMetadataIdRegExp
Local changes:
* Define RESTBase ID pattern in platform and fix slightly
* Bring in paste test from core, which requires platform switching.
Bug: T147607
Depends-On: Ifc1c15872a50f915e5ef8d561b3a363dc5f4d28f
Change-Id: I3eb21e115de92a67afa85b5675fcbca5b111adb6
Update VE core submodule to master (89ce43b)
New changes:
c3d3d29 ce.CommentNode: inline preview of comment
Change-Id: I8a7f1b69eaf84165742a1f2d10fed3594961a9e9
New changes:
4d8be3b Move hasMatchingAncestor code from FormatTool to SurfaceFragment
bd41435 Check for null keyDownSelectionState in handlers
Change-Id: I6be3fa0955f091fe6f1f925c102b20f19401efbf
New changes:
c314cb6 On CBN detach, mark contentBranchNodeChanged in the CE Surface
0e8e79e Localisation updates from https://translatewiki.net.
ae7cea9 Follow-up 3ca658ed, e3192e2d: avoid JS errors when checking for rAF
328d2db Localisation updates from https://translatewiki.net.
e76de27 Set spellcheck=true on nested contentEditables
7d80ec5 Add method to compare elements and their annotations
f7679c5 Test selections without relying on a ve.dm.Surface select event listener
e8f7947 Localisation updates from https://translatewiki.net.
Change-Id: Ib369c13662e6f8747b0fe9976555d96e198d077f
New changes:
05d7673 Fix 'new ve.dm.Transaction.newFromInsertion' typos in tests
4ab9676 Localisation updates from https://translatewiki.net.
f657993 ve.ce.LinkAnnotation: Only set src on nails in Firefox
3ca658e ve.init.Target: Wrap floating toolbar init in rAF
e3192e2 ve.ce.FocusableNode: Wrap updateInvisibleIcon in rAF
Change-Id: I35cb872fee3eb9d3b415e03703876632cf396839
New changes:
7a06bb7 Fix 'new ve.dm.Transaction.newFromDocumentInsertion' typo
db9b7a7 Make ve.dm.Transaction plain data by removing the .doc property
62c662c Localisation updates from https://translatewiki.net.
455e949 TableKeyDownHandler: return early if any modifier other than shift is used
9440e38 Localisation updates from https://translatewiki.net.
ed76839 Update OOjs UI to v0.17.9
Change-Id: I70a6387e6ea6d986ed132998df592f12274adf1a
New changes:
aacd653 Deprecate IndexValueStore#clone in favour of slice()
90b1003 ce.TableRowNode: check we're still attached before setupMissingCell
c0ffae7 Allow users to pass in LinearData objects to cloneWithData
da9961b Localisation updates from https://translatewiki.net.
5467054 Un-break build from i18n-bot-added language
50f2e84 Allow progress dialog items to be non-cancellable
26dd5ad Don't render cursor holders outside of active node
38b5572 Fix bad serialization of DOM elements in cloneElement
Change-Id: I07e0c9b150897a6d3023845930b2dd9554d9c74e
New changes:
f83e572 Remove items from DTH factory indexes when unregistering
7a4082b Don't remove selected content in beforePaste
9337fc8 ve.init.Target: Unset this.surface when destroying it
87a749b Check surface has been added before setting
Change-Id: Iff620659c5e25e26b7fd864b177d0f74e057d3f5
New changes:
5195713 Make ve.dm.IndexValueStore ordered, append-only and slicable
8fbad4d Localisation updates from https://translatewiki.net.
ce10786 Use super property to call parent methods
9f20e05 Rename overlapsRange to isTouching
7e0e13a Fix typo in plain text file handler (extension -> extensions)
599c6e1 ElementLinearData: don't sanitize away newlines within <pre>
Change-Id: I6837b71a4270bbdfb8c15e9027f721c3f85ea907
New changes:
14b5fbc [BREAKING CHANGE] Move originalDomElements to the IV store and use MD5
c5d21f0 Provide methods to (de)serialize transactions
Local changes to move originalDomElements to IV store
Depends-On: I8a71c1a40ec35108d0a9a388da6f75632f8dc53c
Depends-On: I32c9b5f984fcf96e3354841ecfcd444149e8f159
Change-Id: I0fbb6324eede94558426178cbdad6b5daf0f8318
New changes:
a91476f Update OOjs UI to v0.17.8
e9b6179 Remove duplicate properties defined in mixin ve.Node
4c5663c SourceSurfaceFragment#insertDocument: Don't insert on failure to convert document
7318df5 Ensure data isn't discarded when moving a row next to sparse cells
ceeb1c1 Localisation updates from https://translatewiki.net.
df12906 Table move tests
6322800 Wrap to the next/previous row when tabbing in a table
951fed5 Simplify table move tests
0feae99 Add a new row when tabbing off the end of a table
519399c Simplify definition of table selections
5e67e00 Localisation updates from https://translatewiki.net.
14479e8 Cursor off tables with up/down
Change-Id: I5643d8dc3c05fb3072b7fca869b86ca09b3a638c
New changes:
4ffe974 ve.ce.Surface: when setting selection just focus if focusTarget == activeElement
e915864 Localisation updates from https://translatewiki.net.
Change-Id: I1c0565aa45a95d1303ec6ba6ff3a547c5572d0fe
New changes:
756f7d2 Forcibly reapply selection on insertion annotation change, to move between unicorns
Change-Id: I6771929c18262c8a4a3d33ad607a8b84cd8dd7e2
New changes:
91e5312 Break ve.serailizeHtml down into ve.serializeXhtmlElement
1243f62 Allow nodes to dynamically become handlesOwnChildren nodes
65a2513 Only trigger Firefox data:uri image paste if there is no other HTML
7d4515c Fix TextState#getChangeTransaction bug
070fa4b Localisation updates from https://translatewiki.net.
Change-Id: I2783a5c37bb103192ce849c88c9869fb45853af1
New changes:
acf0983 Create SourceSurfaceFragment for editing source documents
8bf0568 Make keepEmptyContentBranches an option of #sanitize and simplify usage
9cad9de ce.Surface: only change selection during CleanupUnicorns if it's in the document
bda3f0b Localisation updates from https://translatewiki.net.
Change-Id: I1fa8af7e4b881238f77e0601b2b275e2b8e1cd2c
New changes:
e7cb202 Mark context wrappers as wrappers
20b75af Localisation updates from https://translatewiki.net.
a4dde9f Annotate pasted external text
8148301 Always preserve leading whitespace when converting for clipboard
82a35b7 TransactionProcessor: Apply annotations to ranges at the highest uniform offset
21fc1eb Restore previous selection when annotation inspector is dismissed
358181c Preserve prior valid DOM selections in showModelSelection
a0f7dba build: Bump various devDependencies to latest
0ae0f7e Follow-up Iabec6a6: Fix typo in mousemove selection update code
d69a4df Provide tools to make text bigger or smaller
Local changes for big/small tools
Change-Id: If418a1a47276cc1e1530c4a3ad6784136d8d14f8
New changes:
6a075ba Fix internal paste sanitization to not remove empty branch nodes
8536b5d Throw exceptions when trying to access element of DocumentNode
5d5fbdd Simplify node type checks for deep copy of HTML attributes
a304645 Avoid clipboard API in Edge
af2c3f6 Localisation updates from https://translatewiki.net.
73798d9 PreviewElement: Improve and simplify #isGenerating
c108a0c Factor out creation of invisible 'icon' for overriding
dbd2c05 Use surface fragments in IndentationAction methods
92b8f84 build: Upgrade stylelint-related devDependencies
a036ae3 Use more surface fragments in paste
5df2713 Add maintainIndices param to SurfaceFragment#getText
679ad10 Use surface fragment in resizable node
b57cbf2 Update OOjs UI to v0.17.7
Change-Id: I8ce04f12ca8baca5442cdb6a9f7469bcb7e54913
New changes:
d1a3e7d TabIndexScope: respect aria-hidden
4cbd630 Localisation updates from https://translatewiki.net.
531335a TabIndexScope: skipAriaHidden not respected, and applied to FragmentDialog
d00caf3 Ensure document slices which consist of content nodes get wrapped
baac5bd Use innerText for setting clipboard plain text
a1cf57c Check surface is set up in toolbar
2351bea Allow newDocRange to be passed to SurfaceFragment#insertDocument
5a27227 Make no change to selection if insertDocument is a no-op
1675e30 Fix table paste tests to use dynamic retain-to-end operations
2939527 Add test for internal copy/paste
Change-Id: I6a34c61eeedd8a61a8cb16116f8f67293921f2dc
New changes:
694c97f Update OOjs UI to v0.17.6
35da0d9 Use transition timing from OOUI theme config
b1777ea Move cursor holder debug styles to stylesheet
af5f22a Use surface fragments in ListAction methods
9710c76 Use surface fragment in FormatAction
39581ac Use surface fragment in LinkAction
a3ea25c Check surface exists before trying to execute keydown command
Change-Id: Ia95a40db7d63a5e767cf590538952790457377d7
New changes:
5e107a8 Remove references to git.wikimedia.org
f2758d6 Better documentation of the data argument in sequences
45b85ca Ensure getNodesByType always returns an array
c96c398 Improve performance of table move by only setting selection once
Change-Id: I5220bf056fcc39617182fc6afcb63fa12a142315
New changes:
368e151 Fix ve.BranchNode#traverse and make non-static
bafca89 Add a node-type index
be57e9c Simplify node class comparison in converter
Change-Id: I0ebf84fdcf81ecd914c3602a92ebcf42029c6b6e