Index: trunk/extensions/FlaggedRevs/FlaggedRevs.php |
— | — | @@ -290,7 +290,7 @@ |
291 | 291 | $wgAvailableRights[] = 'stablesettings'; |
292 | 292 | |
293 | 293 | # Bump this number every time you change flaggedrevs.css/flaggedrevs.js |
294 | | -$wgFlaggedRevStyleVersion = 76; |
| 294 | +$wgFlaggedRevStyleVersion = 77; |
295 | 295 | |
296 | 296 | $wgExtensionFunctions[] = 'efLoadFlaggedRevs'; |
297 | 297 | |
Index: trunk/extensions/FlaggedRevs/FlaggedRevsXML.php |
— | — | @@ -323,7 +323,7 @@ |
324 | 324 | $encPath = htmlspecialchars( FlaggedRevs::styleUrlPath() . '/img' ); |
325 | 325 | $img = '<img id="mw-fr-revisiontoggle" class="fr-toggle-arrow"'; |
326 | 326 | $img .= " src=\"{$encPath}/arrow-down.png\" style=\"display:none;\""; |
327 | | - $img .= ' onMouseOver="FlaggedRevs.showBoxDetails()"'; |
| 327 | + $img .= ' onMouseOver="FlaggedRevs.onBoxMouseOver()"'; |
328 | 328 | $img .= ' title="' . wfMsgHtml( 'revreview-toggle-title' ) . '"'; |
329 | 329 | $img .= ' alt="' . wfMsgHtml( 'revreview-toggle-show' ) . '" />'; |
330 | 330 | return $img; |
Index: trunk/extensions/FlaggedRevs/client/flaggedrevs.js |
— | — | @@ -13,6 +13,8 @@ |
14 | 14 | 'toggleShow' : '(+)', |
15 | 15 | 'toggleHide' : '(-)' |
16 | 16 | }, |
| 17 | + /* Dropdown collapse timer */ |
| 18 | + 'boxCollapseTimer': null, |
17 | 19 | /* Hide rating/diff clutter */ |
18 | 20 | 'enableShowhide': function() { |
19 | 21 | // Rating detail box |
— | — | @@ -76,11 +78,18 @@ |
77 | 79 | toggle.innerHTML = this.messages.toggleShow; |
78 | 80 | } |
79 | 81 | }, |
80 | | - |
| 82 | + |
| 83 | + /* Expands flag info box details on mouseOver */ |
| 84 | + 'onBoxMouseOver': function( event ) { |
| 85 | + window.clearTimeout( this.boxCollapseTimer ); |
| 86 | + this.boxCollapseTimer = null; |
| 87 | + this.showBoxDetails(); |
| 88 | + }, |
| 89 | + |
81 | 90 | /* Hides flag info box details on mouseOut *except* for event bubbling */ |
82 | 91 | 'onBoxMouseOut': function( event ) { |
83 | 92 | if( !this.isMouseOutBubble( event, 'mw-fr-revisiontag' ) ) { |
84 | | - this.hideBoxDetails(); |
| 93 | + this.boxCollapseTimer = window.setTimeout( this.hideBoxDetails, 150 ); |
85 | 94 | } |
86 | 95 | }, |
87 | 96 | |