Merge "Displaying protection expiry date and time in action=info"
[lhc/web/wiklou.git] / resources / src / jquery.tipsy / jquery.tipsy.js
index 58a99a5..2a37fa8 100644 (file)
@@ -6,7 +6,7 @@
 // * This installation of tipsy includes several local modifications to both Javascript and CSS.
 //   Please be careful when upgrading.
 
-(function($) {
+( function ( mw, $ ) {
 
     function maybeCall(thing, ctx) {
         return (typeof thing == 'function') ? (thing.call(ctx)) : thing;
 
         if (!options.live) this.each(function() { get(this); });
 
-        if (options.trigger != 'manual') {
-            var binder   = options.live ? 'live' : 'bind',
-                eventIn  = options.trigger == 'hover' ? 'mouseenter' : 'focus',
+        if ( options.trigger != 'manual' ) {
+            var eventIn  = options.trigger == 'hover' ? 'mouseenter' : 'focus',
                 eventOut = options.trigger == 'hover' ? 'mouseleave' : 'blur';
-            this[binder](eventIn, enter)[binder](eventOut, leave);
+            if ( options.live ) {
+                mw.track( 'mw.deprecate', 'tipsy-live' );
+                mw.log.warn( 'Use of the "live" option of jquery.tipsy is deprecated.' );
+                // XXX: The official status of 'context' is deprecated, and the official status of
+                // 'selector' is removed, so this really needs to go.
+                $( this.context )
+                    .on( eventIn, this.selector, enter )
+                    .on( eventOut, this.selector, leave );
+            } else {
+                this
+                    .on( eventIn, enter )
+                    .on( eventOut, leave );
+            }
         }
 
         return this;
         }
     };
 
-})(jQuery);
+}( mediaWiki, jQuery ) );