Improve shortcut in getWikitextFragment

Use hasContent to
1. Catch cases where the document is empty, e.g. <p></p>
2. Avoid having to use the converter

Change-Id: Ib1bb36824ca871e535bef38cef8137fdfb81b53e
This commit is contained in:
Ed Sanders 2020-04-29 17:32:09 +01:00
parent 4e30398c2e
commit 0c6b6e3e89

View file

@ -505,19 +505,20 @@ ve.init.mw.Target.prototype.refreshUser = function ( doc ) {
* @return {jQuery.Promise} Abortable promise which resolves with a wikitext string
*/
ve.init.mw.Target.prototype.getWikitextFragment = function ( doc, useRevision ) {
var xhr,
params = {
action: 'visualeditoredit',
paction: 'serialize',
html: ve.dm.converter.getDomFromModel( doc ).body.innerHTML,
page: this.getPageName()
};
var xhr, params;
// Optimise as a no-op
if ( params.html === '' ) {
// Shortcut for empty document
if ( !doc.data.hasContent() ) {
return ve.createDeferred().resolve( '' );
}
params = {
action: 'visualeditoredit',
paction: 'serialize',
html: ve.dm.converter.getDomFromModel( doc ).body.innerHTML,
page: this.getPageName()
};
if ( useRevision === undefined || useRevision ) {
params.oldid = this.revid;
params.etag = this.etag;