Esanders has uploaded a new change for review. https://gerrit.wikimedia.org/r/300852
Change subject: Fix internal paste sanitization to not remove empty branch nodes
......................................................................
Fix internal paste sanitization to not remove empty branch nodes
Change-Id: I77a626bc72528991afcfb8e1a65815d00c0778fe
---
M src/ce/ve.ce.Surface.js
M tests/ce/ve.ce.Surface.test.js
2 files changed, 52 insertions(+), 2 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor
refs/changes/52/300852/1
diff --git a/src/ce/ve.ce.Surface.js b/src/ce/ve.ce.Surface.js
index eef4942..b546893 100644
--- a/src/ce/ve.ce.Surface.js
+++ b/src/ce/ve.ce.Surface.js
@@ -2016,7 +2016,7 @@
);
if ( importRules.all ) {
- pasteData.sanitize( importRules.all );
+ sanitize( pasteData, true );
}
// Annotate
@@ -2037,7 +2037,7 @@
);
if ( importRules.all ) {
- pasteData.sanitize( importRules.all );
+ sanitize( pasteData, true );
}
// Annotate
diff --git a/tests/ce/ve.ce.Surface.test.js b/tests/ce/ve.ce.Surface.test.js
index 7c35cef..27fa071 100644
--- a/tests/ce/ve.ce.Surface.test.js
+++ b/tests/ce/ve.ce.Surface.test.js
@@ -2498,6 +2498,56 @@
]
],
msg: 'Double indented lists (Google Docs style)'
+ },
+ {
+ rangeOrSelection: new ve.Range( 0 ),
+ pasteTargetHtml: '<p>A</p><p></p><p>B</p>',
+ expectedOps: [
+ [
+ {
+ type: 'replace',
+ insert: [
+ { type:
'paragraph' },
+ 'A',
+ { type:
'/paragraph' },
+ { type:
'paragraph' },
+ 'B',
+ { type:
'/paragraph' }
+ ],
+ remove: []
+ },
+ { type: 'retain', length:
docLen }
+ ]
+ ],
+ msg: 'Empty paragraph stripped from external
paste'
+ },
+ {
+ rangeOrSelection: new ve.Range( 8 ),
+ documentHtml: '<p>A</p><p></p><p>B</p>',
+ internalSourceRangeOrSelection: new ve.Range(
0, 8 ),
+ expectedOps: [
+ [
+ { type: 'retain', length: 8 },
+ {
+ type: 'replace',
+ insert: [
+ { type:
'paragraph' },
+ 'A',
+ { type:
'/paragraph' },
+ { type:
'paragraph' },
+ { type:
'/paragraph' },
+ { type:
'paragraph' },
+ 'B',
+ { type:
'/paragraph' }
+ ],
+ insertedDataLength: 8,
+ insertedDataOffset: 0,
+ remove: []
+ },
+ { type: 'retain', length: 2 }
+ ]
+ ],
+ msg: 'Empty paragraph kept in internal paste'
}
];
--
To view, visit https://gerrit.wikimedia.org/r/300852
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I77a626bc72528991afcfb8e1a65815d00c0778fe
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
