r62248 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r62247‎ | r62248 | r62249 >
Date:15:00, 10 February 2010
Author:adam
Status:ok
Tags:
Comment:
Making the fallback text on the temporary wikieditor cover translation friendly. Sigh. Followup to r62201
Modified paths:
  • /trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php (modified) (history)
  • /trunk/extensions/UsabilityInitiative/WikiEditor/WikiEditor.hooks.php (modified) (history)
  • /trunk/extensions/UsabilityInitiative/WikiEditor/WikiEditor.i18n.php (modified) (history)
  • /trunk/extensions/UsabilityInitiative/js/plugins.combined.js (modified) (history)
  • /trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js (modified) (history)
  • /trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js (modified) (history)

Diff [purge]

Index: trunk/extensions/UsabilityInitiative/UsabilityInitiative.hooks.php
@@ -72,7 +72,7 @@
7373 array( 'src' => 'js/plugins/jquery.namespaceSelect.js', 'version' => 1 ),
7474 array( 'src' => 'js/plugins/jquery.suggestions.js', 'version' => 7 ),
7575 array( 'src' => 'js/plugins/jquery.textSelection.js', 'version' => 27 ),
76 - array( 'src' => 'js/plugins/jquery.wikiEditor.js', 'version' => 118 ),
 76+ array( 'src' => 'js/plugins/jquery.wikiEditor.js', 'version' => 119 ),
7777 array( 'src' => 'js/plugins/jquery.wikiEditor.highlight.js', 'version' => 29 ),
7878 array( 'src' => 'js/plugins/jquery.wikiEditor.toolbar.js', 'version' => 48 ),
7979 array( 'src' => 'js/plugins/jquery.wikiEditor.dialogs.js', 'version' => 12 ),
@@ -82,10 +82,10 @@
8383 array( 'src' => 'js/plugins/jquery.wikiEditor.publish.js', 'version' => 2 ),
8484 ),
8585 'combined' => array(
86 - array( 'src' => 'js/plugins.combined.js', 'version' => 236 ),
 86+ array( 'src' => 'js/plugins.combined.js', 'version' => 237 ),
8787 ),
8888 'minified' => array(
89 - array( 'src' => 'js/plugins.combined.min.js', 'version' => 236 ),
 89+ array( 'src' => 'js/plugins.combined.min.js', 'version' => 237 ),
9090 ),
9191 ),
9292 );
Index: trunk/extensions/UsabilityInitiative/WikiEditor/WikiEditor.hooks.php
@@ -28,6 +28,7 @@
2929 );
3030 static $messages = array(
3131 'wikieditor-wikitext-tab',
 32+ 'wikieditor-loading',
3233 );
3334 static $modules = array(
3435 'global' => array(
Index: trunk/extensions/UsabilityInitiative/WikiEditor/WikiEditor.i18n.php
@@ -15,6 +15,7 @@
1616 'wikieditor' => 'Advanced wikitext editing interface',
1717 'wikieditor-desc' => 'Provides an extendable wikitext editing interface and many feature-providing modules',
1818 'wikieditor-wikitext-tab' => 'Wikitext',
 19+ 'wikieditor-loading' => 'Loading',
1920 );
2021
2122 /** Message documentation (Message documentation)
@@ -26,6 +27,7 @@
2728
2829 I guess that 'feature-providing modules' means the same as 'modules providing features'.",
2930 'wikieditor-wikitext-tab' => 'Caption of the tab containing the edit box',
 31+ 'wikieditor-loading' => 'Explanatory text for the temporary cover placed over the wikiediort while it\'s being assembled',
3032 );
3133
3234 /** Afrikaans (Afrikaans)
Index: trunk/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.js
@@ -1223,14 +1223,15 @@
12241224 * as a response to the "resize" event.
12251225 */
12261226
 1227+ // Assemble a temporary div to place over the wikiEditor while it's being constructed
 1228+ var $loader = $( '<div></div>' )
 1229+ .addClass( 'wikiEditor-ui-loading' )
 1230+ .append( $( '<span>' + mw.usability.getMsg( 'wikieditor-loading' ) + '</span>' )
 1231+ .css( 'marginTop', context.$textarea.height() / 2 ) );
12271232 // Encapsulate the textarea with some containers for layout
12281233 context.$textarea
1229 - .after(
1230 - $( '<div></div>' )
1231 - .addClass( 'wikiEditor-ui-loading' )
1232 - .append( $( '<span>Loading</span>' )
1233 - .css( 'marginTop', context.$textarea.height() / 2 ) ) )
1234 - .add( '.wikiEditor-ui-loading' )
 1234+ .after( $loader )
 1235+ .add( $loader )
12351236 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui' ) )
12361237 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui-view wikiEditor-ui-view-wikitext' ) )
12371238 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui-left' ) )
Index: trunk/extensions/UsabilityInitiative/js/plugins.combined.js
@@ -7656,14 +7656,15 @@
76577657 * as a response to the "resize" event.
76587658 */
76597659
 7660+ // Assemble a temporary div to place over the wikiEditor while it's being constructed
 7661+ var $loader = $( '<div></div>' )
 7662+ .addClass( 'wikiEditor-ui-loading' )
 7663+ .append( $( '<span>' + mw.usability.getMsg( 'wikieditor-loading' ) + '</span>' )
 7664+ .css( 'marginTop', context.$textarea.height() / 2 ) );
76607665 // Encapsulate the textarea with some containers for layout
76617666 context.$textarea
7662 - .after(
7663 - $( '<div></div>' )
7664 - .addClass( 'wikiEditor-ui-loading' )
7665 - .append( $( '<span>Loading</span>' )
7666 - .css( 'marginTop', context.$textarea.height() / 2 ) ) )
7667 - .add( '.wikiEditor-ui-loading' )
 7667+ .after( $loader )
 7668+ .add( $loader )
76687669 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui' ) )
76697670 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui-view wikiEditor-ui-view-wikitext' ) )
76707671 .wrapAll( $( '<div></div>' ).addClass( 'wikiEditor-ui-left' ) )
Index: trunk/extensions/UsabilityInitiative/js/plugins.combined.min.js
@@ -534,7 +534,7 @@
535535 pos=nextPos+(leavingP?1:0);if(t.node.nodeName=='#text'){lastTextNode=t.node;lastTextNodeDepth=t.depth;}
536536 t=nextT;}},'saveSelection':function(){if(!$.browser.msie){return;}
537537 context.$iframe[0].contentWindow.focus();context.savedSelection=context.$iframe[0].contentWindow.document.selection.createRange();},'restoreSelection':function(){if(!$.browser.msie||context.savedSelection===null){return;}
538 -context.$iframe[0].contentWindow.focus();context.savedSelection.select();context.savedSelection=null;}};context.$textarea.after($('<div></div>').addClass('wikiEditor-ui-loading').append($('<span>Loading</span>').css('marginTop',context.$textarea.height()/2))).add('.wikiEditor-ui-loading').wrapAll($('<div></div>').addClass('wikiEditor-ui')).wrapAll($('<div></div>').addClass('wikiEditor-ui-view wikiEditor-ui-view-wikitext')).wrapAll($('<div></div>').addClass('wikiEditor-ui-left')).wrapAll($('<div></div>').addClass('wikiEditor-ui-bottom')).wrapAll($('<div></div>').addClass('wikiEditor-ui-text'));context.$ui=context.$textarea.parent().parent().parent().parent().parent();context.$wikitext=context.$textarea.parent().parent().parent().parent();context.$wikitext.before($('<div></div>').addClass('wikiEditor-ui-controls').append($('<div></div>').addClass('wikiEditor-ui-tabs').hide()).append($('<div></div>').addClass('wikiEditor-ui-buttons'))).before($('<div style="clear:both;"></div>'));context.$controls=context.$ui.find('.wikiEditor-ui-buttons').hide();context.$buttons=context.$ui.find('.wikiEditor-ui-buttons');context.$tabs=context.$ui.find('.wikiEditor-ui-tabs');context.$ui.after($('<div style="clear:both;"></div>'));context.$wikitext.append($('<div></div>').addClass('wikiEditor-ui-right'));context.$wikitext.find('.wikiEditor-ui-left').prepend($('<div></div>').addClass('wikiEditor-ui-top'));context.view='wikitext';$(window).resize(function(event){context.fn.trigger('resize',event);});context.$iframe=$('<iframe></iframe>').attr({'frameBorder':0,'border':0,'tabindex':1,'src':wgScriptPath+'/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.html?'+'instance='+context.instance+'&ts='+(new Date()).getTime(),'id':'wikiEditor-iframe-'+context.instance}).css({'backgroundColor':'white','width':'100%','height':context.$textarea.height(),'display':'none','overflow-y':'scroll','overflow-x':'hidden'}).insertAfter(context.$textarea).load(function(){if(!this.isSecondRun){context.$iframe[0].contentWindow.document.designMode='on';if($.browser.msie){this.isSecondRun=true;return;}}
 538+context.$iframe[0].contentWindow.focus();context.savedSelection.select();context.savedSelection=null;}};var $loader=$('<div></div>').addClass('wikiEditor-ui-loading').append($('<span>'+mw.usability.getMsg('wikieditor-loading')+'</span>').css('marginTop',context.$textarea.height()/2));context.$textarea.after($loader).add($loader).wrapAll($('<div></div>').addClass('wikiEditor-ui')).wrapAll($('<div></div>').addClass('wikiEditor-ui-view wikiEditor-ui-view-wikitext')).wrapAll($('<div></div>').addClass('wikiEditor-ui-left')).wrapAll($('<div></div>').addClass('wikiEditor-ui-bottom')).wrapAll($('<div></div>').addClass('wikiEditor-ui-text'));context.$ui=context.$textarea.parent().parent().parent().parent().parent();context.$wikitext=context.$textarea.parent().parent().parent().parent();context.$wikitext.before($('<div></div>').addClass('wikiEditor-ui-controls').append($('<div></div>').addClass('wikiEditor-ui-tabs').hide()).append($('<div></div>').addClass('wikiEditor-ui-buttons'))).before($('<div style="clear:both;"></div>'));context.$controls=context.$ui.find('.wikiEditor-ui-buttons').hide();context.$buttons=context.$ui.find('.wikiEditor-ui-buttons');context.$tabs=context.$ui.find('.wikiEditor-ui-tabs');context.$ui.after($('<div style="clear:both;"></div>'));context.$wikitext.append($('<div></div>').addClass('wikiEditor-ui-right'));context.$wikitext.find('.wikiEditor-ui-left').prepend($('<div></div>').addClass('wikiEditor-ui-top'));context.view='wikitext';$(window).resize(function(event){context.fn.trigger('resize',event);});context.$iframe=$('<iframe></iframe>').attr({'frameBorder':0,'border':0,'tabindex':1,'src':wgScriptPath+'/extensions/UsabilityInitiative/js/plugins/jquery.wikiEditor.html?'+'instance='+context.instance+'&ts='+(new Date()).getTime(),'id':'wikiEditor-iframe-'+context.instance}).css({'backgroundColor':'white','width':'100%','height':context.$textarea.height(),'display':'none','overflow-y':'scroll','overflow-x':'hidden'}).insertAfter(context.$textarea).load(function(){if(!this.isSecondRun){context.$iframe[0].contentWindow.document.designMode='on';if($.browser.msie){this.isSecondRun=true;return;}}
539539 context.$content=$(context.$iframe[0].contentWindow.document.body);var html=context.$textarea.val().replace(/&esc;/g,'&esc;esc;').replace(/\<p\>/g,'&esc;&lt;p&gt;').replace(/\<\/p\>/g,'&esc;&lt;/p&gt;').replace(/\<span class="wikiEditor-tab"\>\<\/span\>/g,'&esc;&lt;span&nbsp;class=&quot;wikiEditor-tab&quot;&gt;&lt;/span&gt;').replace(/&nbsp;/g,'&esc;&amp;nbsp;');if($.browser.msie){html=html.replace(/\t/g,'<span class="wikiEditor-tab"></span>');if($.browser.versionNumber<=7){html=html.replace(/ /g,"&nbsp;");}else{html=html.replace(/(^|\n) /g,"$1&nbsp;");}}
540540 html=$('<div />').text('<p>'+html.replace(/\r?\n/g,'</p><p>')+'</p>').html().replace(/&amp;nbsp;/g,'&nbsp;').replace(/&lt;p&gt;/g,'<p>').replace(/&lt;\/p&gt;/g,'</p>').replace(/<p><\/p>/g,'<br>').replace(/&amp;esc;&amp;amp;nbsp;/g,'&amp;nbsp;').replace(/&amp;esc;&amp;lt;p&amp;gt;/g,'&lt;p&gt;').replace(/&amp;esc;&amp;lt;\/p&amp;gt;/g,'&lt;/p&gt;').replace(/&amp;esc;&amp;lt;span&amp;nbsp;class=&amp;quot;wikiEditor-tab&amp;quot;&amp;gt;&amp;lt;\/span&amp;gt;/g,'&lt;span class="wikiEditor-tab"&gt;&lt;\/span&gt;').replace(/&amp;esc;esc;/g,'&amp;esc;');context.$content.html(html);context.oldHTML=html;context.history.push({'html':html});if($('body').is('.rtl')){context.$content.addClass('rtl').attr('dir','rtl');}
541541 context.$textarea.attr('disabled',true);context.$textarea.hide();context.$iframe.show();context.fn.trigger('ready');$('.wikiEditor-ui-loading').fadeOut('fast',function(){$(this).remove();});$(context.$iframe[0].contentWindow.document).bind('keydown',function(event){return context.fn.trigger('keydown',event);}).bind('paste',function(event){return context.fn.trigger('paste',event);}).bind('keyup paste mouseup cut encapsulateSelection',function(event){return context.fn.trigger('change',event);}).delayedBind(250,'keyup paste mouseup cut encapsulateSelection',function(event){context.fn.trigger('delayedChange',event);});});context.$textarea.closest('form').submit(function(){context.$textarea.attr('disabled',false);context.$textarea.val(context.$textarea.textSelection('getContents'));});context.fallbackWindowOnBeforeUnload=window.onbeforeunload;window.onbeforeunload=function(){context.$textarea.val(context.$textarea.textSelection('getContents'));if(context.fallbackWindowOnBeforeUnload){return context.fallbackWindowOnBeforeUnload();}};}

Past revisions this follows-up on

RevisionCommit summaryAuthorDate
r62201Adding a temporary div cover while the wikiEditor is loadingadam21:55, 9 February 2010

Status & tagging log