Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Wikipedia: Mediawiki-CVS

SVN: [59152] trunk/extensions/UsabilityInitiative

 

 

Wikipedia mediawiki-cvs RSS feed   Index | Next | Previous | View Threaded


adam at svn

Nov 16, 2009, 3:26 PM

Post #1 of 1 (56 views)
Permalink
SVN: [59152] trunk/extensions/UsabilityInitiative

http://www.mediawiki.org/wiki/Special:Code/MediaWiki/59152

Revision: 59152
Author: adam
Date: 2009-11-16 23:26:02 +0000 (Mon, 16 Nov 2009)

Log Message:
-----------
migrating the toc resizing to use jquery ui resizable

Modified Paths:
--------------
trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php
trunk/extensions/UsabilityInitiative/css/combined.css
trunk/extensions/UsabilityInitiative/css/combined.min.css
trunk/extensions/UsabilityInitiative/css/wikiEditor.css
trunk/extensions/UsabilityInitiative/css/wikiEditor.toc.css
trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toc.js
trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toolbar.js
trunk/extensions/UsabilityInitiative/js/plugins.combined.js
trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js

Modified: trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php
===================================================================
--- trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php 2009-11-16 23:26:02 UTC (rev 59152)
@@ -22,16 +22,16 @@
array( 'src' => 'css/wikiEditor.css', 'version' => 6 ),
array( 'src' => 'css/wikiEditor.toolbar.css', 'version' => 7 ),
array( 'src' => 'css/wikiEditor.dialogs.css', 'version' => 2 ),
- array( 'src' => 'css/wikiEditor.toc.css', 'version' => 16 ),
+ array( 'src' => 'css/wikiEditor.toc.css', 'version' => 18 ),
array( 'src' => 'css/wikiEditor.preview.css', 'version' => 1 ),
array( 'src' => 'css/vector/jquery-ui-1.7.2.css', 'version' => '1.7.2y' ),
),
'combined' => array(
- array( 'src' => 'css/combined.css', 'version' => 24 ),
+ array( 'src' => 'css/combined.css', 'version' => 25 ),
array( 'src' => 'css/vector/jquery-ui-1.7.2.css', 'version' => '1.7.2y' ),
),
'minified' => array(
- array( 'src' => 'css/combined.min.css', 'version' => 24 ),
+ array( 'src' => 'css/combined.min.css', 'version' => 25 ),
array( 'src' => 'css/vector/jquery-ui-1.7.2.css', 'version' => '1.7.2y' ),
),
)
@@ -73,14 +73,14 @@
array( 'src' => 'js/plugins/jquery.wikiEditor.js', 'version' => 17 ),
array( 'src' => 'js/plugins/jquery.wikiEditor.toolbar.js', 'version' => 29 ),
array( 'src' => 'js/plugins/jquery.wikiEditor.dialogs.js', 'version' => 9 ),
- array( 'src' => 'js/plugins/jquery.wikiEditor.toc.js', 'version' => 36 ),
+ array( 'src' => 'js/plugins/jquery.wikiEditor.toc.js', 'version' => 37 ),
array( 'src' => 'js/plugins/jquery.wikiEditor.preview.js', 'version' => 3 ),
),
'combined' => array(
- array( 'src' => 'js/plugins.combined.js', 'version' => 78 ),
+ array( 'src' => 'js/plugins.combined.js', 'version' => 79 ),
),
'minified' => array(
- array( 'src' => 'js/plugins.combined.min.js', 'version' => 78 ),
+ array( 'src' => 'js/plugins.combined.min.js', 'version' => 79 ),
),
),
);

Modified: trunk/extensions/UsabilityInitiative/css/combined.css
===================================================================
--- trunk/extensions/UsabilityInitiative/css/combined.css 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/css/combined.css 2009-11-16 23:26:02 UTC (rev 59152)
@@ -97,6 +97,7 @@
}
.wikiEditor-ui .wikiEditor-ui-right {
float: right;
+ overflow:hidden;
}
.wikiEditor-wikitext {
float: left;
@@ -111,7 +112,7 @@
.wikiEditor-buttons {
float: right;
width: 50%;
-}/* wikiEditor dialogs module */
+} *//* wikiEditor dialogs module */

.ui-widget table {
margin-top: 0.75em;
@@ -127,13 +128,9 @@
z-index: 1099;
}
/* wikiEditor toc module */
-
-.wikiEditor-ui-text {
- /*border-right: solid silver 1px;*/
-}
body.rtl .wikiEditor-ui-text {
- /*border-right: none;*/
- /*border-left: solid silver 1px;*/
+ border-right: none;
+ border-left: solid silver 1px;
}
.wikiEditor-ui-toc {
/* height and width are set dynamically */
@@ -151,6 +148,7 @@
*/
}
.wikiEditor-ui-toc ul {
+ border-left: solid silver 1px;
padding: 0;
margin: 0;
list-style: none;
@@ -160,6 +158,10 @@
list-style-type: none;
width: 100%;
}
+body.rtl .wikiEditor-ui-toc ul {
+ border-left: none;
+ border-right: solid silver 1px;
+}
.tab-toc {
/* Should match the toolbar */
background-image: url(../images/wikiEditor/toolbar/base.png);
@@ -170,6 +172,8 @@
line-height: 26px;
padding-left: 1em;
border-bottom: solid 1px silver;
+ white-space:nowrap;
+ overflow:hidden;
}
.tab-toc a{
outline:none;
@@ -254,7 +258,8 @@
}

/* Resizing Changes */
-#wikiEditor-ui-toc-resize-vertical{
+.wikiEditor-ui-toc-resize-vertical,
+.ui-resizable-w{
width:4px;
position:absolute;
top:0;
@@ -262,25 +267,36 @@
height:100%;
cursor:ew-resize;
}
-#wikiEditor-ui-toc-resize-grip{
+.wikiEditor-ui .wikiEditor-ui-right {
+ overflow:visible;
+}
+.wikiEditor-ui-right .ui-resizable-w{
+ left: 0px !important;
+}
+
+.wikiEditor-ui-right .wikiEditor-ui-toc-resize-grip{
width:5px;
height:12px;
padding:3px;
position:absolute;
top:7px;
- right:2px;
+ left:-12px !important;
cursor:ew-resize;
background:url(../images/wikiEditor/toc/grip.png) 50% 50% no-repeat;
}
-#wikiEditor-ui-toolbar .tab-toc{
+.wikiEditor-ui-toolbar .tab-toc{
float:right;
margin:3px 16px 3px 3px;
line-height:26px;
}
-#wikiEditor-ui-text textarea{
+.wikiEditor-ui-text textarea{
resize:none;
}
-#wikiEditor-ui-text textarea:focus {outline:none;}/* wikiEditor toolbar module */
+.wikiEditor-ui-text textarea:focus {outline:none;}
+.wikiEditor-ui-right{
+ left: 0px !important;
+}
+/* wikiEditor toolbar module */

.wikiEditor-ui-toolbar {
position: relative;

Modified: trunk/extensions/UsabilityInitiative/css/combined.min.css
===================================================================
--- trunk/extensions/UsabilityInitiative/css/combined.min.css 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/css/combined.min.css 2009-11-16 23:26:02 UTC (rev 59152)
@@ -90,6 +90,7 @@
}
.wikiEditor-ui .wikiEditor-ui-right{
float:right;
+overflow:hidden;
}
.wikiEditor-wikitext{
float:left;
@@ -104,7 +105,7 @@
.wikiEditor-buttons{
float:right;
width:50%;
-}
+} */
.ui-widget table{
margin-top:0.75em;
}
@@ -116,9 +117,9 @@
div.suggestions{
z-index:1099;
}
-.wikiEditor-ui-text{
-}
body.rtl .wikiEditor-ui-text{
+border-right:none;
+border-left:solid silver 1px;
}
.wikiEditor-ui-toc{
padding:0;
@@ -134,6 +135,7 @@
*/
}
.wikiEditor-ui-toc ul{
+border-left:solid silver 1px;
padding:0;
margin:0;
list-style:none;
@@ -142,6 +144,10 @@
list-style-type:none;
width:100%;
}
+body.rtl .wikiEditor-ui-toc ul{
+border-left:none;
+border-right:solid silver 1px;
+}
.tab-toc{
background-image:url(../images/wikiEditor/toolbar/base.png);
background-position:left top;
@@ -151,6 +157,8 @@
line-height:26px;
padding-left:1em;
border-bottom:solid 1px silver;
+white-space:nowrap;
+overflow:hidden;
}
.tab-toc a{
outline:none;
@@ -228,7 +236,8 @@
.wikiEditor-ui-toc-collapse-closed{
background:#f3f3f3 url(../images/wikiEditor/toc/open.png) 4px 50% no-repeat;
}
-#wikiEditor-ui-toc-resize-vertical{
+.wikiEditor-ui-toc-resize-vertical,
+.ui-resizable-w{
width:4px;
position:absolute;
top:0;
@@ -236,25 +245,34 @@
height:100%;
cursor:ew-resize;
}
-#wikiEditor-ui-toc-resize-grip{
+.wikiEditor-ui .wikiEditor-ui-right{
+overflow:visible;
+}
+.wikiEditor-ui-right .ui-resizable-w{
+left:0px !important;
+}
+.wikiEditor-ui-right .wikiEditor-ui-toc-resize-grip{
width:5px;
height:12px;
padding:3px;
position:absolute;
top:7px;
-right:2px;
+left:-12px !important;
cursor:ew-resize;
background:url(../images/wikiEditor/toc/grip.png) 50% 50% no-repeat;
}
-#wikiEditor-ui-toolbar .tab-toc{
+.wikiEditor-ui-toolbar .tab-toc{
float:right;
margin:3px 16px 3px 3px;
line-height:26px;
}
-#wikiEditor-ui-text textarea{
+.wikiEditor-ui-text textarea{
resize:none;
}
-#wikiEditor-ui-text textarea:focus{outline:none;}
+.wikiEditor-ui-text textarea:focus{outline:none;}
+.wikiEditor-ui-right{
+left:0px !important;
+}
.wikiEditor-ui-toolbar{
position:relative;
width:100%;

Modified: trunk/extensions/UsabilityInitiative/css/wikiEditor.css
===================================================================
--- trunk/extensions/UsabilityInitiative/css/wikiEditor.css 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/css/wikiEditor.css 2009-11-16 23:26:02 UTC (rev 59152)
@@ -47,6 +47,7 @@
}
.wikiEditor-ui .wikiEditor-ui-right {
float: right;
+ overflow:hidden;
}
.wikiEditor-wikitext {
float: left;
@@ -61,4 +62,4 @@
.wikiEditor-buttons {
float: right;
width: 50%;
-}
\ No newline at end of file
+} */
\ No newline at end of file

Modified: trunk/extensions/UsabilityInitiative/css/wikiEditor.toc.css
===================================================================
--- trunk/extensions/UsabilityInitiative/css/wikiEditor.toc.css 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/css/wikiEditor.toc.css 2009-11-16 23:26:02 UTC (rev 59152)
@@ -1,11 +1,7 @@
/* wikiEditor toc module */
-
-.wikiEditor-ui-text {
- /*border-right: solid silver 1px;*/
-}
body.rtl .wikiEditor-ui-text {
- /*border-right: none;*/
- /*border-left: solid silver 1px;*/
+ border-right: none;
+ border-left: solid silver 1px;
}
.wikiEditor-ui-toc {
/* height and width are set dynamically */
@@ -23,6 +19,7 @@
*/
}
.wikiEditor-ui-toc ul {
+ border-left: solid silver 1px;
padding: 0;
margin: 0;
list-style: none;
@@ -32,6 +29,10 @@
list-style-type: none;
width: 100%;
}
+body.rtl .wikiEditor-ui-toc ul {
+ border-left: none;
+ border-right: solid silver 1px;
+}
.tab-toc {
/* Should match the toolbar */
background-image: url(../images/wikiEditor/toolbar/base.png);
@@ -42,6 +43,8 @@
line-height: 26px;
padding-left: 1em;
border-bottom: solid 1px silver;
+ white-space:nowrap;
+ overflow:hidden;
}
.tab-toc a{
outline:none;
@@ -126,7 +129,8 @@
}

/* Resizing Changes */
-#wikiEditor-ui-toc-resize-vertical{
+.wikiEditor-ui-toc-resize-vertical,
+.ui-resizable-w{
width:4px;
position:absolute;
top:0;
@@ -134,22 +138,32 @@
height:100%;
cursor:ew-resize;
}
-#wikiEditor-ui-toc-resize-grip{
+.wikiEditor-ui .wikiEditor-ui-right {
+ overflow:visible;
+}
+.wikiEditor-ui-right .ui-resizable-w{
+ left: 0px !important;
+}
+
+.wikiEditor-ui-right .wikiEditor-ui-toc-resize-grip{
width:5px;
height:12px;
padding:3px;
position:absolute;
top:7px;
- right:2px;
+ left:-12px !important;
cursor:ew-resize;
background:url(../images/wikiEditor/toc/grip.png) 50% 50% no-repeat;
}
-#wikiEditor-ui-toolbar .tab-toc{
+.wikiEditor-ui-toolbar .tab-toc{
float:right;
margin:3px 16px 3px 3px;
line-height:26px;
}
-#wikiEditor-ui-text textarea{
+.wikiEditor-ui-text textarea{
resize:none;
}
-#wikiEditor-ui-text textarea:focus {outline:none;}
\ No newline at end of file
+.wikiEditor-ui-text textarea:focus {outline:none;}
+.wikiEditor-ui-right{
+ left: 0px !important;
+}

Modified: trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toc.js
===================================================================
--- trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toc.js 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toc.js 2009-11-16 23:26:02 UTC (rev 59152)
@@ -125,6 +125,8 @@
* @param {Object} event Event object with context as data
*/
collapse: function( event ) {
+ /*
+ FIXME: Needs rewritten to deal with all of the recent changes
var context = event.data;
var $toc = context.modules.$toc;
if( !$toc.data( 'openWidth' ) ) {
@@ -142,6 +144,7 @@
//.prev()
//.animate( {'marginRight': '1px'}, 'fast', function() { $(this).css('marginRight', '-1px'); } );
$.cookie( 'wikiEditor-' + context.instance + '-toc-width', 1 );
+ */
return false;
},

@@ -151,6 +154,8 @@
* @param {Object} event Event object with context as data
*/
expand: function( event) {
+ /*
+ FIXME: Needs rewritten to deal with all of the recent changes
var context = event.data;
context.$ui.find( '.tab-toc' )
.unbind( 'click', $.wikiEditor.modules.toc.fn.expand )
@@ -166,8 +171,18 @@
//.prev()
//.animate( { 'marginRight': context.modules.$toc.data( 'openWidth' ) }, 'fast' );
$.cookie( 'wikiEditor-' + context.instance + '-toc-width', context.modules.$toc.data( 'openWidth' ) );
+ */
return false;
},
+ startResize: function ( event, ui ){
+
+ },
+ resize: function( event, ui ) {
+
+ },
+ stopResize: function( event, ui ){
+
+ },
/**
* Handles drag events on the contents module
*
@@ -180,10 +195,13 @@
// returned NaN in some cases. Even this seems to be buggy in that .offset().left
// is sometimes 0.
// FIXME: We should ditch the whole thing and use jQuery UI Resizable if possible
+
+
if ( pageX )
mR = pageX;
else
mR = e.pageX - context.$ui.find( '.wikiEditor.ui-left' ).offset().left;
+ console.log(mR);
mR = context.$ui.find( '.wikiEditor-ui-left' ).width() - mR;
if( mR < 26 || mR > context.$ui.find( '.wikiEditor-ui-left' ).width() - 250)
return false;
@@ -274,10 +292,10 @@
return list;
}
function buildCollapseBar() {
- // FIXME: Move this to a .css file
+ /* FIXME: Move this to a .css file
context.modules.$toc.find( 'ul:first' ).css( 'width', '147px' )
- .css( 'margin-left', '19px' ).css( 'border-left', '1px solid #DDDDDD' );
- var $collapseBar = $( '<div />' )
+ .css( 'margin-left', '19px' ).css( 'border-left', '1px solid #DDDDDD' ); */
+ return $( '<div />' )
.addClass( 'wikiEditor-ui-toc-collapse-open' )
.attr( 'id', 'wikiEditor-ui-toc-collapse' )
.data( 'openWidth', $.wikiEditor.modules.toc.defaultWidth )
@@ -307,29 +325,13 @@
}

});
- return $collapseBar;
}
function buildResizeControls() {
- var $resizeControlVertical = $( '<div />' )
- .attr( 'id', 'wikiEditor-ui-toc-resize-vertical')
- .mousedown( function() {
- context.modules.$toc
- .data( 'openWidth', context.modules.$toc.width() );
- $()
- .bind( 'mousemove', context, $.wikiEditor.modules.toc.fn.drag )
- .bind( 'mouseup', context, $.wikiEditor.modules.toc.fn.stopDrag );
- $( context.$iframe[0].contentWindow.document )
- .mousemove( function( e ) {
- parent.top.$j().trigger( 'mousemove', e.pageX );
- return false;
- } )
- .bind( 'mouseup', function() {
- parent.top.$j().trigger( 'mouseup' );
- return false;
- });
- return false;
- });
-
+ context.$ui.find( '.ui-resizable-e' )
+ .removeClass( 'ui-resizable-e' )
+ .addClass( 'ui-resizable-w' )
+ .addClass( 'wikiEditor-ui-toc-resize-grip' )
+ .appendTo(context.$ui.find( '.wikiEditor-ui-right' ));
var $collapseControl = $( '<div />' ).addClass( 'tab' ).addClass( 'tab-toc' )
.append( '<a href="#" />' );
if( $.cookie( 'wikiEditor-' + context.instance + '-toc-width' ) != 1 ) {
@@ -347,7 +349,7 @@
}
if ( context.initialWidth == 1 )
$.wikiEditor.modules.toc.fn.collapse( { data: context } );
- return $resizeControlVertical;
+ return "";
}

// Build outline from wikitext
@@ -409,11 +411,38 @@
'wrapper': div } );
}
context.modules.$toc.html( buildList( structure ) );
-
if(wgNavigableTOCResizable) {
+ context.$ui.find( '.wikiEditor-ui-right' )
+ .data( 'wikiEditor-ui-left', context.$ui.find( '.wikiEditor-ui-left' ))
+ .resizable( {handles: 'w,e', minWidth: 50,
+ start: function( e, ui ) {
+ $( '<div />' ).addClass( 'wikiEditor-ui-resize-mask' )
+ .css( 'position', 'absolute' )
+ .css( 'z-index', 2 )
+ .css( 'left', 0 ).css( 'top', 0 ).css( 'bottom', 0 ).css( 'right', 0 )
+ .appendTo(context.$ui.find( '.wikiEditor-ui-left' ));
+ },
+ resize: function( e, ui ) {
+ /*
+ * FIXME: Currently setting a heigh property on the resizable with ever mousemove event
+ * which breaks our height resizing code in jquery.wikiEditor.toolbar.js
+ */
+
+ // for some odd reason, ui.size.width seems a step ahead of what the *actual* width of
+ // the resizable is
+ $( this ).css( 'width' , ui.size.width )
+ .data( 'wikiEditor-ui-left' ).css( 'marginRight', ( -1 * ui.size.width ) )
+ .children( ).css( 'marginRight', ui.size.width );
+ },
+ stop: function ( e, ui ) {
+ context.$ui.find( '.wikiEditor-ui-resize-mask' ).remove();
+ if( ui.size.width < 70 ){
+ // collapse
+ }
+ }
+ });
+
context.modules.$toc.append( buildResizeControls() );
- } else if(wgNavigableTOCCollapseEnable) {
- context.modules.$toc.append( buildCollapseBar() );
}
context.modules.$toc.find( 'div' ).autoEllipse( { 'position': 'right', 'tooltip': true } );
// Cache the outline for later use

Modified: trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toolbar.js
===================================================================
--- trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toolbar.js 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.toolbar.js 2009-11-16 23:26:02 UTC (rev 59152)
@@ -478,12 +478,15 @@
$(this).data( 'context' ).$ui.find( '.section-' + $(this).parent().attr( 'rel' ) );
var show = $section.css( 'display' ) == 'none';
$previousSections = $section.parent().find( '.section:visible' );
+ var dH = $previousSections.outerHeight();
$previousSections.css( 'position', 'absolute' );
$previousSections.fadeOut( 'fast', function() { $(this).css( 'position', 'relative' ); } );
$(this).parent().parent().find( 'a' ).removeClass( 'current' );
$sections.css('overflow', 'hidden');
if ( show ) {
$section.fadeIn( 'fast' );
+ dH = $section.outerHeight() - dH;
+ context.modules.$toc.animate({'height': "+="+dH}, $section.outerHeight() * 2);
$sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2, function() {
$(this).css('overflow', 'visible').css('height', 'auto');
} );
@@ -493,6 +496,7 @@
.animate( { 'height': 0 }, $section.outerHeight() * 2, function() {
$(this).css('overflow', 'visible');
} );
+ context.modules.$toc.animate({'height': "-="+$section.outerHeight()}, $section.outerHeight() * 2);
}
// Click tracking
if($.trackAction != undefined){
@@ -562,33 +566,6 @@
},
build : function( context, config ) {
var $tabs = $( '<div />' ).addClass( 'tabs' ).appendTo( context.modules.$toolbar );
- /*
- if( wgNavigableTOCCollapseEnable ) {
- // FIXME: This code is duplicated from the TOC plugin and doesn't belong here;
- // the TOC drag thingy should be in the TOC plugin instead
- // placeholder for drag control creation code
- $dragControl = $( '<div />' ).addClass( 'tab' ).attr( 'id', 'wikiEditor-ui-toc-resize-grip' )
- .append( '<a href="#" title="Drag to resize"></a>' )
- .mousedown( function() {
- context.modules.$toc
- .data( 'openWidth', $( '#wikiEditor-ui-toc' ).width() );
- $()
- .bind( 'mousemove', context, $.wikiEditor.modules.toc.fn.drag )
- .bind( 'mouseup', context, $.wikiEditor.modules.toc.fn.stopDrag );
- $( context.$iframe[0].contentWindow.document )
- .mousemove( function() {
- parent.top.$j().trigger( 'mousemove', e.pageX );
- return false;
- } )
- .mouseup( function() {
- parent.top.$j().trigger( 'mouseup' );
- return false;
- });
- return false;
- })
- context.modules.$toolbar.append( $dragControl );
- }
- */
var $sections = $( '<div />' ).addClass( 'sections' ).appendTo( context.modules.$toolbar );
context.modules.$toolbar.append( $( '<div />' ).css( 'clear', 'both' ) );
var sectionQueue = [];
@@ -619,7 +596,12 @@
s.$sections.append( $.wikiEditor.modules.toolbar.fn.buildSection( s.context, s.id, s.config ) );
var $section = s.$sections.find( '.section:visible' );
if ( $section.size() ) {
- $sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2 );
+ $sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2, function( ) {
+ context.modules.$toc.height(
+ context.$ui.find( '.wikiEditor-ui-left' )
+ .outerHeight() - context.$ui.find( '.tab-toc' ).outerHeight()
+ );
+ } );
}
}
} );

Modified: trunk/extensions/UsabilityInitiative/js/plugins.combined.js
===================================================================
--- trunk/extensions/UsabilityInitiative/js/plugins.combined.js 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/js/plugins.combined.js 2009-11-16 23:26:02 UTC (rev 59152)
@@ -2390,12 +2390,15 @@
$(this).data( 'context' ).$ui.find( '.section-' + $(this).parent().attr( 'rel' ) );
var show = $section.css( 'display' ) == 'none';
$previousSections = $section.parent().find( '.section:visible' );
+ var dH = $previousSections.outerHeight();
$previousSections.css( 'position', 'absolute' );
$previousSections.fadeOut( 'fast', function() { $(this).css( 'position', 'relative' ); } );
$(this).parent().parent().find( 'a' ).removeClass( 'current' );
$sections.css('overflow', 'hidden');
if ( show ) {
$section.fadeIn( 'fast' );
+ dH = $section.outerHeight() - dH;
+ context.modules.$toc.animate({'height': "+="+dH}, $section.outerHeight() * 2);
$sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2, function() {
$(this).css('overflow', 'visible').css('height', 'auto');
} );
@@ -2405,6 +2408,7 @@
.animate( { 'height': 0 }, $section.outerHeight() * 2, function() {
$(this).css('overflow', 'visible');
} );
+ context.modules.$toc.animate({'height': "-="+$section.outerHeight()}, $section.outerHeight() * 2);
}
// Click tracking
if($.trackAction != undefined){
@@ -2531,7 +2535,12 @@
s.$sections.append( $.wikiEditor.modules.toolbar.fn.buildSection( s.context, s.id, s.config ) );
var $section = s.$sections.find( '.section:visible' );
if ( $section.size() ) {
- $sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2 );
+ $sections.animate( { 'height': $section.outerHeight() }, $section.outerHeight() * 2, function( ) {
+ context.modules.$toc.height(
+ context.$ui.find( '.wikiEditor-ui-left' )
+ .outerHeight() - context.$ui.find( '.tab-toc' ).outerHeight()
+ );
+ } );
}
}
} );
@@ -2587,8 +2596,9 @@
.css( 'width', $.wikiEditor.modules.toc.defaultWidth )
.append( context.modules.$toc );
context.modules.$toc.height(
- context.$ui.find( '.wikiEditor-ui-left' ).height()
+ context.$ui.find( '.wikiEditor-ui-left' ).height() - 1
);
+ context.modules.$toc
context.$ui.find( '.wikiEditor-ui-left' )
.css( 'marginRight', "-" + $.wikiEditor.modules.toc.defaultWidth )
.children()

Modified: trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js
===================================================================
--- trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js 2009-11-16 22:31:06 UTC (rev 59151)
+++ trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js 2009-11-16 23:26:02 UTC (rev 59152)
@@ -146,7 +146,7 @@
$.wikiEditor.autoMsg(row[cell],['html','text'])+'</span></td>';}
html+='</tr>';return html;},buildCharacter:function(character,actions){if(typeof character=='string'){character={'label':character,'action':{'type':'encapsulate','options':{'pre':character}}};}else if(0 in character&&1 in character){character={'label':character[0],'action':{'type':'encapsulate','options':{'pre':character[1]}}};}
if('action'in character&&'label'in character){actions[character.label]=character.action;return'<a rel="'+character.label+'" href="#">'+character.label+'</a>';}},buildTab:function(context,id,section){var selected=$.cookie('wikiEditor-'+context.instance+'-toolbar-section');return $('<span />').attr({'class':'tab tab-'+id,'rel':id}).append($('<a />').addClass(selected==id?'current':null).attr('href','#').text($.wikiEditor.autoMsg(section,'label')).data('context',context).bind('mouseup',function(e){$(this).blur();}).bind('mousedown',function(e){if(e.button!==0&&(e.button&1)==0){return true;}
-var $sections=$(this).data('context').$ui.find('.sections');var $section=$(this).data('context').$ui.find('.section-'+$(this).parent().attr('rel'));var show=$section.css('display')=='none';$previousSections=$section.parent().find('.section:visible');$previousSections.css('position','absolute');$previousSections.fadeOut('fast',function(){$(this).css('position','relative');});$(this).parent().parent().find('a').removeClass('current');$sections.css('overflow','hidden');if(show){$section.fadeIn('fast');$sections.animate({'height':$section.outerHeight()},$section.outerHeight()*2,function(){$(this).css('overflow','visible').css('height','auto');});$(this).addClass('current');}else{$sections.css('height',$section.outerHeight()).animate({'height':0},$section.outerHeight()*2,function(){$(this).css('overflow','visible');});}
+var $sections=$(this).data('context').$ui.find('.sections');var $section=$(this).data('context').$ui.find('.section-'+$(this).parent().attr('rel'));var show=$section.css('display')=='none';$previousSections=$section.parent().find('.section:visible');var dH=$previousSections.outerHeight();$previousSections.css('position','absolute');$previousSections.fadeOut('fast',function(){$(this).css('position','relative');});$(this).parent().parent().find('a').removeClass('current');$sections.css('overflow','hidden');if(show){$section.fadeIn('fast');dH=$section.outerHeight()-dH;context.modules.$toc.animate({'height':"+="+dH},$section.outerHeight()*2);$sections.animate({'height':$section.outerHeight()},$section.outerHeight()*2,function(){$(this).css('overflow','visible').css('height','auto');});$(this).addClass('current');}else{$sections.css('height',$section.outerHeight()).animate({'height':0},$section.outerHeight()*2,function(){$(this).css('overflow','visible');});context.modules.$toc.animate({'height':"-="+$section.outerHeight()},$section.outerHeight()*2);}
if($.trackAction!=undefined){$.trackAction($section.attr('rel')+'.'+(show?'show':'hide'));}
$.cookie('wikiEditor-'+$(this).data('context').instance+'-toolbar-section',show?$section.attr('rel'):null);}).click(function(){return false;}));},buildSection:function(context,id,section){context.$textarea.trigger('wikiEditor-toolbar-buildSection-'+id,[section]);var selected=$.cookie('wikiEditor-'+context.instance+'-toolbar-section');var $section;switch(section.type){case'toolbar':var $section=$('<div />').attr({'class':'toolbar section section-'+id,'rel':id});if('groups'in section){for(group in section.groups){$section.append($.wikiEditor.modules.toolbar.fn.buildGroup(context,group,section.groups[group]));}}
break;case'booklet':var $pages=$('<div />').addClass('pages');var $index=$('<div />').addClass('index');if('pages'in section){for(page in section.pages){$pages.append($.wikiEditor.modules.toolbar.fn.buildPage(context,page,section.pages[page]));$index.append($.wikiEditor.modules.toolbar.fn.buildBookmark(context,page,section.pages[page]));}}
@@ -154,9 +154,10 @@
if($section!==null&&id!=='main'){var show=selected==id;$section.css('display',show?'block':'none');}
return $section;},updateBookletSelection:function(context,id,$pages,$index){var cookie='wikiEditor-'+context.instance+'-booklet-'+id+'-page';var selected=$.cookie(cookie);var $selectedIndex=$index.find('*[rel='+selected+']');if($selectedIndex.size()==0){selected=$index.children().eq(0).attr('rel');$.cookie(cookie,selected);}
$pages.children().hide();$pages.find('*[rel='+selected+']').show();$index.children().removeClass('current');$selectedIndex.addClass('current');},build:function(context,config){var $tabs=$('<div />').addClass('tabs').appendTo(context.modules.$toolbar);var $sections=$('<div />').addClass('sections').appendTo(context.modules.$toolbar);context.modules.$toolbar.append($('<div />').css('clear','both'));var sectionQueue=[];for(section in config){if(section=='main'){context.modules.$toolbar.prepend($.wikiEditor.modules.toolbar.fn.buildSection(context,section,config[section]));}else{sectionQueue.push({'$sections':$sections,'context':context,'id':section,'config':config[section]});$tabs.append($.wikiEditor.modules.toolbar.fn.buildTab(context,section,config[section]));}}
-$.eachAsync(sectionQueue,{'bulk':0,'end':function(){$('body').css('position','static');$('body').css('position','relative');},'loop':function(i,s){s.$sections.append($.wikiEditor.modules.toolbar.fn.buildSection(s.context,s.id,s.config));var $section=s.$sections.find('.section:visible');if($section.size()){$sections.animate({'height':$section.outerHeight()},$section.outerHeight()*2);}}});}}};})(jQuery);(function($){$.wikiEditor.modules.toc={api:{},defaultWidth:'13em',fn:{create:function(context,config){if('$toc'in context.modules){return;}
+$.eachAsync(sectionQueue,{'bulk':0,'end':function(){$('body').css('position','static');$('body').css('position','relative');},'loop':function(i,s){s.$sections.append($.wikiEditor.modules.toolbar.fn.buildSection(s.context,s.id,s.config));var $section=s.$sections.find('.section:visible');if($section.size()){$sections.animate({'height':$section.outerHeight()},$section.outerHeight()*2,function(){context.modules.$toc.height(context.$ui.find('.wikiEditor-ui-left').outerHeight()-context.$ui.find('.tab-toc').outerHeight());});}}});}}};})(jQuery);(function($){$.wikiEditor.modules.toc={api:{},defaultWidth:'13em',fn:{create:function(context,config){if('$toc'in context.modules){return;}
context.initialWidth=$.wikiEditor.modules.toc.defaultWidth;if(wgNavigableTOCResizable){if(!$.cookie('wikiEditor-'+context.instance+'-toc-width')){$.cookie('wikiEditor-'+context.instance+'-toc-width',$.wikiEditor.modules.toc.defaultWidth);}else{context.initialWidth=$.cookie('wikiEditor-'+context.instance+'-toc-width');}}
-var height=context.$ui.find('.wikiEditor-ui-left').height();context.modules.$toc=$('<div />').addClass('wikiEditor-ui-toc').data('context',context);context.$ui.find('.wikiEditor-ui-right').css('width',$.wikiEditor.modules.toc.defaultWidth).append(context.modules.$toc);context.modules.$toc.height(context.$ui.find('.wikiEditor-ui-left').height());context.$ui.find('.wikiEditor-ui-left').css('marginRight',"-"+$.wikiEditor.modules.toc.defaultWidth).children().css('marginRight',$.wikiEditor.modules.toc.defaultWidth);$.wikiEditor.modules.toc.fn.build(context,config);context.$textarea.delayedBind(250,'mouseup scrollToPosition focus keyup encapsulateSelection change',function(event){var context=$(this).data('wikiEditor-context');$(this).eachAsync({bulk:0,loop:function(){$.wikiEditor.modules.toc.fn.build(context);$.wikiEditor.modules.toc.fn.update(context);}});}).blur(function(){var context=$(this).data('wikiEditor-context');context.$textarea.delayedBindCancel(250,'mouseup scrollToPosition focus keyup encapsulateSelection change');$.wikiEditor.modules.toc.fn.unhighlight(context);});},unhighlight:function(context){context.modules.$toc.find('div').removeClass('current');},update:function(context){$.wikiEditor.modules.toc.fn.unhighlight(context);var position=context.$textarea.textSelection('getCaretPosition');var section=0;if(context.data.outline.length>0){if(!(position<context.data.outline[0].position-1)){while(section<context.data.outline.length&&context.data.outline[section].position-1<position){section++;}
+var height=context.$ui.find('.wikiEditor-ui-left').height();context.modules.$toc=$('<div />').addClass('wikiEditor-ui-toc').data('context',context);context.$ui.find('.wikiEditor-ui-right').css('width',$.wikiEditor.modules.toc.defaultWidth).append(context.modules.$toc);context.modules.$toc.height(context.$ui.find('.wikiEditor-ui-left').height()-1);context.modules.$toc
+context.$ui.find('.wikiEditor-ui-left').css('marginRight',"-"+$.wikiEditor.modules.toc.defaultWidth).children().css('marginRight',$.wikiEditor.modules.toc.defaultWidth);$.wikiEditor.modules.toc.fn.build(context,config);context.$textarea.delayedBind(250,'mouseup scrollToPosition focus keyup encapsulateSelection change',function(event){var context=$(this).data('wikiEditor-context');$(this).eachAsync({bulk:0,loop:function(){$.wikiEditor.modules.toc.fn.build(context);$.wikiEditor.modules.toc.fn.update(context);}});}).blur(function(){var context=$(this).data('wikiEditor-context');context.$textarea.delayedBindCancel(250,'mouseup scrollToPosition focus keyup encapsulateSelection change');$.wikiEditor.modules.toc.fn.unhighlight(context);});},unhighlight:function(context){context.modules.$toc.find('div').removeClass('current');},update:function(context){$.wikiEditor.modules.toc.fn.unhighlight(context);var position=context.$textarea.textSelection('getCaretPosition');var section=0;if(context.data.outline.length>0){if(!(position<context.data.outline[0].position-1)){while(section<context.data.outline.length&&context.data.outline[section].position-1<position){section++;}
section=Math.max(0,section);}
var sectionLink=context.modules.$toc.find('div.section-'+section);sectionLink.addClass('current');var relTop=sectionLink.offset().top-context.modules.$toc.offset().top;var scrollTop=context.modules.$toc.scrollTop();var divHeight=context.modules.$toc.height();var sectionHeight=sectionLink.height();if(relTop<0)
context.modules.$toc.scrollTop(scrollTop+relTop);else if(relTop+sectionHeight>divHeight)



_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS [at] lists
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Wikipedia mediawiki-cvs RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.