From ddf6a89c722de63ba257c8c3d7765f26217153f2 Mon Sep 17 00:00:00 2001 From: Ed Sanders Date: Sun, 9 Apr 2017 22:28:03 +0100 Subject: [PATCH] Remove #wpTextbox1 fallback from ArticleTargetLoader#requestPageData Makes the API clearer and the method re-usable. Change-Id: If79afb262e0c8c8e2193c07fef6bb0712496a4d9 --- .../init/targets/ve.init.mw.DesktopArticleTarget.init.js | 4 +++- modules/ve-mw/init/ve.init.mw.ArticleTargetLoader.js | 9 +++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.init.js b/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.init.js index d75bc3e96d..6bfb8c75d2 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.init.js +++ b/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.init.js @@ -256,7 +256,9 @@ section, oldid, 'mwTarget', // ve.init.mw.DesktopArticleTarget.static.name - modified + modified, + // If switching to visual, check if we have wikitext to convert + mode === 'visual' ? $( '#wpTextbox1' ).textSelection( 'getContents' ) : undefined ); } ) .done( incrementLoadingProgress ); diff --git a/modules/ve-mw/init/ve.init.mw.ArticleTargetLoader.js b/modules/ve-mw/init/ve.init.mw.ArticleTargetLoader.js index def7ed754f..ce21e03b6f 100644 --- a/modules/ve-mw/init/ve.init.mw.ArticleTargetLoader.js +++ b/modules/ve-mw/init/ve.init.mw.ArticleTargetLoader.js @@ -103,13 +103,14 @@ * @param {string} [oldid] Old revision ID, current if omitted * @param {string} [targetName] Optional target name for tracking * @param {boolean} [modified] The page was been modified before loading (e.g. in source mode) + * @param {string} [wikitext] Wikitext to convert to HTML. The original document is fetched if undefined. * @return {jQuery.Promise} Abortable promise resolved with a JSON object */ - requestPageData: function ( mode, pageName, section, oldid, targetName, modified ) { + requestPageData: function ( mode, pageName, section, oldid, targetName, modified, wikitext ) { if ( mode === 'source' ) { return this.requestWikitext( pageName, section, oldid, targetName, modified ); } else { - return this.requestParsoidData( pageName, oldid, targetName, modified ); + return this.requestParsoidData( pageName, oldid, targetName, modified, wikitext ); } }, @@ -168,10 +169,6 @@ 'Api-User-Agent': 'VisualEditor-MediaWiki/' + mw.config.get( 'wgVersion' ) }; - if ( wikitext === undefined ) { - wikitext = $( '#wpTextbox1' ).textSelection( 'getContents' ); - } - if ( // wikitext can be an empty string wikitext !== undefined &&