Henning Snater has uploaded a new change for review.
https://gerrit.wikimedia.org/r/68632
Change subject: Implemented showSpinner() method in valueview.preview widget
......................................................................
Implemented showSpinner() method in valueview.preview widget
A loading spinner can be displayed now instead of any previewed value. This may
be used
when using a back-end parser while waiting for the AJAX request to return.
Change-Id: I1a687edc857c145ee36cc9405752e992c5eeb8df
---
M ValueView/ValueView.resources.php
M ValueView/resources/jquery.valueview/valueview.preview.js
M ValueView/tests/qunit/jquery.valueview/valueview.preview.tests.js
3 files changed, 43 insertions(+), 1 deletion(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/DataValues
refs/changes/32/68632/1
diff --git a/ValueView/ValueView.resources.php
b/ValueView/ValueView.resources.php
index 0cf6dd6..d8258f0 100644
--- a/ValueView/ValueView.resources.php
+++ b/ValueView/ValueView.resources.php
@@ -293,6 +293,7 @@
),
'dependencies' => array(
'jquery.ui.widget',
+ 'mediawiki.legacy.shared',
),
'messages' => array(
'valueview-preview-label',
diff --git a/ValueView/resources/jquery.valueview/valueview.preview.js
b/ValueView/resources/jquery.valueview/valueview.preview.js
index 248c8fd..b31bfc2 100644
--- a/ValueView/resources/jquery.valueview/valueview.preview.js
+++ b/ValueView/resources/jquery.valueview/valueview.preview.js
@@ -83,6 +83,13 @@
.removeClass( this.widgetBaseClass + '-novalue'
)
.text( value );
}
+ },
+
+ /**
+ * Shows a spinner symbol instead of any preview.
+ */
+ showSpinner: function() {
+ this.$value.empty().append( $( '<span/>' ).addClass(
'mw-small-spinner' ) );
}
} );
diff --git a/ValueView/tests/qunit/jquery.valueview/valueview.preview.tests.js
b/ValueView/tests/qunit/jquery.valueview/valueview.preview.tests.js
index 2c8035d..fe0f918 100644
--- a/ValueView/tests/qunit/jquery.valueview/valueview.preview.tests.js
+++ b/ValueView/tests/qunit/jquery.valueview/valueview.preview.tests.js
@@ -63,16 +63,50 @@
);
} );
- QUnit.test( 'Update value', 1, function( assert ) {
+ QUnit.test( 'Update value', 6, function( assert ) {
var preview = newTestPreview();
preview.update( 'test' );
+
+ assert.equal(
+ preview.$value.children().length,
+ 0,
+ 'Preview has no child node.'
+ );
assert.equal(
preview.$value.text(),
'test',
'Updated preview.'
);
+
+ preview.showSpinner();
+
+ assert.equal(
+ preview.$value.children().length,
+ 1,
+ 'Preview has only one child node.'
+ );
+
+ assert.ok(
+ preview.$value.children( 'span' ).first().hasClass(
'mw-small-spinner' ),
+ 'Applied spinner css class.'
+ );
+
+ preview.update( 'test2' );
+
+ assert.equal(
+ preview.$value.text(),
+ 'test2',
+ 'Updated preview.'
+ );
+
+ assert.equal(
+ preview.$value.children().length,
+ 0,
+ 'Preview has no child node.'
+ );
+
} );
}( jQuery, QUnit ) );
--
To view, visit https://gerrit.wikimedia.org/r/68632
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1a687edc857c145ee36cc9405752e992c5eeb8df
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/DataValues
Gerrit-Branch: master
Gerrit-Owner: Henning Snater <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits