Esanders has uploaded a new change for review. https://gerrit.wikimedia.org/r/270262
Change subject: scrollIntoView: Deprecate callback in favour of promise ...................................................................... scrollIntoView: Deprecate callback in favour of promise Change-Id: I7cd4f20ab889e42d760e3f88163f62eacfc3cad4 --- M src/Element.js 1 file changed, 14 insertions(+), 8 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/oojs/ui refs/changes/62/270262/1 diff --git a/src/Element.js b/src/Element.js index 4f86844..0244690 100644 --- a/src/Element.js +++ b/src/Element.js @@ -568,13 +568,16 @@ * @static * @param {HTMLElement} el Element to scroll into view * @param {Object} [config] Configuration options - * @param {string} [config.duration] jQuery animation duration value + * @param {string} [config.duration='fast'] jQuery animation duration value * @param {string} [config.direction] Scroll in only one direction, e.g. 'x' or 'y', omit * to scroll in both directions - * @param {Function} [config.complete] Function to call when scrolling completes + * @param {Function} [config.complete] Function to call when scrolling completes. + * Deprecated since 0.15.3, use return promise instead. + * @return {jQuery.Promise} Promise which resolves when the scroll is complete */ OO.ui.Element.static.scrollIntoView = function ( el, config ) { - var position, animations, callback, container, $container, elementDimensions, containerDimensions, $window; + var position, animations, callback, container, $container, elementDimensions, containerDimensions, $window, + deferred = $.Deferred(); // Configuration initialization config = config || {}; @@ -622,17 +625,20 @@ } if ( !$.isEmptyObject( animations ) ) { $container.stop( true ).animate( animations, config.duration || 'fast' ); - if ( callback ) { - $container.queue( function ( next ) { + $container.queue( function ( next ) { + if ( callback ) { callback(); - next(); - } ); - } + } + deferred.resolve(); + next(); + } ); } else { if ( callback ) { callback(); + deferred.resolve(); } } + return deferred.promise(); }; /** -- To view, visit https://gerrit.wikimedia.org/r/270262 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7cd4f20ab889e42d760e3f88163f62eacfc3cad4 Gerrit-PatchSet: 1 Gerrit-Project: oojs/ui Gerrit-Branch: master Gerrit-Owner: Esanders <esand...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits