Esanders has uploaded a new change for review.
https://gerrit.wikimedia.org/r/189463
Change subject: Switch back to VE when changing language in demo
......................................................................
Switch back to VE when changing language in demo
Change-Id: I6cc703fcc85aff174b79822d716802062f100c96
---
M demos/ve/demo.js
M lib/oojs-ui/oojs-ui.js
2 files changed, 30 insertions(+), 19 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor
refs/changes/63/189463/1
diff --git a/demos/ve/demo.js b/demos/ve/demo.js
index 86d937d..bcb33c0 100644
--- a/demos/ve/demo.js
+++ b/demos/ve/demo.js
@@ -180,25 +180,25 @@
label: 'Page',
input: pageDropdown
} ),
- modeSelect = new OO.ui.ButtonSelectWidget().addItems( [
- new OO.ui.ButtonOptionWidget( { data: 've', label: 'VE'
} ),
- new OO.ui.ButtonOptionWidget( { data: 'edit', label:
'Edit HTML' } ),
- new OO.ui.ButtonOptionWidget( { data: 'read', label:
'Read' } )
- ] ),
removeButton = new OO.ui.ButtonWidget( {
$: this.$,
icon: 'remove',
label: 'Remove surface'
} );
- modeSelect.selectItem( modeSelect.getItemFromData( 've' ) );
+ this.modeSelect = new OO.ui.ButtonSelectWidget().addItems( [
+ new OO.ui.ButtonOptionWidget( { data: 've', label: 'VE' } ),
+ new OO.ui.ButtonOptionWidget( { data: 'edit', label: 'Edit
HTML' } ),
+ new OO.ui.ButtonOptionWidget( { data: 'read', label: 'Read' } )
+ ] );
+ this.modeSelect.selectItem( this.modeSelect.getItemFromData( 've' ) );
this.target = target;
this.surface = null;
this.lang = lang;
this.dir = dir;
this.$surfaceWrapper = this.$( '<div>' );
- this.lastMode = null;
+ this.mode = null;
this.pageMenu = pageDropdown.getMenu();
this.sourceTextInput = new OO.ui.TextInputWidget( {
$: this.$,
@@ -213,9 +213,9 @@
this.pageMenu.on( 'select', function ( item ) {
var page = item.getData();
container.change( 've', page );
- modeSelect.selectItem( modeSelect.getItemFromData( 've' ) );
+ container.modeSelect.selectItem(
container.modeSelect.getItemFromData( 've' ) );
} );
- modeSelect.on( 'select', function ( item ) {
+ this.modeSelect.on( 'select', function ( item ) {
container.change( item.getData() );
} );
removeButton.on( 'click', this.destroy.bind( this ) );
@@ -226,7 +226,7 @@
pageLabel.$element,
pageDropdown.$element,
this.$( '<span
class="ve-demo-toolbar-divider"> </span>' ),
- modeSelect.$element,
+ this.modeSelect.$element,
this.$( '<span
class="ve-demo-toolbar-divider"> </span>' ),
removeButton.$element
)
@@ -273,13 +273,20 @@
*
* @param {string} mode Mode to switch to: 've', 'edit or 'read'
* @param {string} [page] Page to load
+ * @return {jQuery.Promise} Promise which resolves when change is complete
*/
ve.demo.SurfaceContainer.prototype.change = function ( mode, page ) {
var model, doc, html, closePromise,
container = this,
currentDir = 'ltr';
- switch ( this.lastMode ) {
+ if ( mode === this.mode ) {
+ return $.Deferred().resolve().promise();
+ }
+
+ this.modeSelect.selectItem( this.modeSelect.getItemFromData( mode ) );
+
+ switch ( this.mode ) {
case 've':
closePromise = this.$surfaceWrapper.slideUp().promise();
if ( !page ) {
@@ -311,7 +318,7 @@
break;
}
- closePromise.done( function () {
+ return closePromise.done( function () {
switch ( mode ) {
case 've':
if ( page ) {
@@ -331,7 +338,7 @@
container.$readView.html( html ).css(
'direction', currentDir ).slideDown();
break;
}
- container.lastMode = mode;
+ container.mode = mode;
} );
};
@@ -401,14 +408,18 @@
* @param {string} dir Directionality
*/
ve.demo.SurfaceContainer.prototype.reload = function ( lang, dir ) {
+ var container = this;
+
this.lang = lang;
this.dir = dir;
- this.loadHtml( ve.properInnerHtml(
- ve.dm.converter.getDomFromModel(
- this.surface.getModel().getDocument()
- ).body
- ) );
+ this.change( 've' ).done( function () {
+ container.loadHtml( ve.properInnerHtml(
+ ve.dm.converter.getDomFromModel(
+ container.surface.getModel().getDocument()
+ ).body
+ ) );
+ } );
};
/**
diff --git a/lib/oojs-ui/oojs-ui.js b/lib/oojs-ui/oojs-ui.js
index 3cc067e..2fad7f9 100644
--- a/lib/oojs-ui/oojs-ui.js
+++ b/lib/oojs-ui/oojs-ui.js
@@ -11239,7 +11239,7 @@
// Set inline height property to 0 to measure scroll
height
.css( 'height', 0 );
- this.$clone[ 0 ].style.display = 'block';
+ this.$clone.removeClass( 'oo-ui-element-hidden' );
this.valCache = this.$input.val();
--
To view, visit https://gerrit.wikimedia.org/r/189463
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6cc703fcc85aff174b79822d716802062f100c96
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