Fix tipsy behaviour

* Make it visible in interlanguage position
* Do not get stuck in no-tooltip state if previous lang is invalid

Change-Id: Iaf5727a8a729579c2a0c79d0e0dc49d58bbf66ea
This commit is contained in:
Niklas Laxström
2013-04-29 13:07:31 +00:00
parent 9bb7255467
commit 065948182c

View File

@@ -171,22 +171,19 @@
uls = $ulsTrigger.data( 'uls' ); uls = $ulsTrigger.data( 'uls' );
if ( !previousLang ) { if ( previousLang === currentLang ) {
previousLanguages.push( currentLang ); // Do not show tooltip nor update language list
mw.uls.setPreviousLanguages( previousLanguages );
// Do not show tooltip.
return true;
}
if ( previousLang === currentLang || !$.uls.data.languages[previousLang] ) {
// Do not show tooltip.
return true; return true;
} }
previousLanguages.push( currentLang ); previousLanguages.push( currentLang );
mw.uls.setPreviousLanguages( previousLanguages ); mw.uls.setPreviousLanguages( previousLanguages );
if ( !previousLang || !$.uls.data.languages[previousLang] ) {
// Do not show tooltip
return true;
}
// Attach a tipsy tooltip to the trigger // Attach a tipsy tooltip to the trigger
$ulsTrigger.tipsy( { $ulsTrigger.tipsy( {
gravity: tipsyGravity[ulsPosition], gravity: tipsyGravity[ulsPosition],
@@ -238,8 +235,11 @@
$ulsTrigger.tipsy( 'hide' ); $ulsTrigger.tipsy( 'hide' );
} }
// Show the tipsy tooltip on page load. // The interlanguage position needs some time to settle down
showTipsy( 6000 ); window.setTimeout( function() {
// Show the tipsy tooltip on page load.
showTipsy( 6000 );
}, 500 );
// manually show the tooltip // manually show the tooltip
$ulsTrigger.on( 'mouseover', function () { $ulsTrigger.on( 'mouseover', function () {