WordPress.org

Make WordPress Core

Changeset 13548


Ignore:
Timestamp:
03/02/10 11:49:06 (5 years ago)
Author:
dd32
Message:

Tabbing in Editors: Prevent certain browsers from Tabbing out of the field. Props filosofo. Fixes #12424

Location:
trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/js/common.dev.js

    r13446 r13548  
    270270 
    271271    // tab in textareas 
    272     $('textarea#newcontent').keydown(function(e) { 
     272    $('#newcontent').keydown(function(e) { 
    273273        if ( e.keyCode != 9 ) 
    274274            return true; 
     
    276276        var el = e.target, selStart = el.selectionStart, selEnd = el.selectionEnd, val = el.value, scroll, sel; 
    277277 
    278         e.stopPropagation(); 
    279         e.preventDefault(); 
     278        try { 
     279            this.lastKey = 9; // not a standard DOM property, lastKey is to help stop Opera tab event.  See blur handler below. 
     280        } catch(err) {} 
    280281 
    281282        if ( document.selection ) { 
     
    289290            this.scrollTop = scroll; 
    290291        } 
     292         
     293        if ( e.stopPropagation ) 
     294            e.stopPropagation(); 
     295        if ( e.preventDefault ) 
     296            e.preventDefault(); 
     297    }); 
     298     
     299    $('#newcontent').blur(function(e) { 
     300        if ( this.lastKey && 9 == this.lastKey ) 
     301            this.focus(); 
    291302    }); 
    292303}); 
  • trunk/wp-admin/js/common.js

    r13446 r13548  
    1 var showNotice,adminMenu,columns,validateForm;(function(a){adminMenu={init:function(){var b=a("#adminmenu");a(".wp-menu-toggle",b).each(function(){var c=a(this),d=c.siblings(".wp-submenu");if(d.length){c.click(function(){adminMenu.toggle(d)})}else{c.hide()}});this.favorites();a(".separator",b).click(function(){if(a("body").hasClass("folded")){adminMenu.fold(1);deleteUserSetting("mfold")}else{adminMenu.fold();setUserSetting("mfold","f")}return false});if(a("body").hasClass("folded")){this.fold()}this.restoreMenuState()},restoreMenuState:function(){a("li.wp-has-submenu","#adminmenu").each(function(c,d){var b=getUserSetting("m"+c);if(a(d).hasClass("wp-has-current-submenu")){return true}if("o"==b){a(d).addClass("wp-menu-open")}else{if("c"==b){a(d).removeClass("wp-menu-open")}}})},toggle:function(b){var c=b.slideToggle(150,function(){b.css("display","")}).parent().toggleClass("wp-menu-open").attr("id");if(c){a("li.wp-has-submenu","#adminmenu").each(function(f,g){if(c==g.id){var d=a(g).hasClass("wp-menu-open")?"o":"c";setUserSetting("m"+f,d)}})}return false},fold:function(b){if(b){a("body").removeClass("folded");a("#adminmenu li.wp-has-submenu").unbind()}else{a("body").addClass("folded");a("#adminmenu li.wp-has-submenu").hoverIntent({over:function(j){var d,c,g,k,i;d=a(this).find(".wp-submenu");c=a(this).offset().top+d.height()+1;g=a("#wpwrap").height();k=60+c-g;i=a(window).height()+a(window).scrollTop()-15;if(i<(c-k)){k=c-i}if(k>1){d.css({marginTop:"-"+k+"px"})}else{if(d.css("marginTop")){d.css({marginTop:""})}}d.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open").css({marginTop:""})},timeout:220,sensitivity:8,interval:100})}},favorites:function(){a("#favorite-inside").width(a("#favorite-actions").width()-4);a("#favorite-toggle, #favorite-inside").bind("mouseenter",function(){a("#favorite-inside").removeClass("slideUp").addClass("slideDown");setTimeout(function(){if(a("#favorite-inside").hasClass("slideDown")){a("#favorite-inside").slideDown(100);a("#favorite-first").addClass("slide-down")}},200)}).bind("mouseleave",function(){a("#favorite-inside").removeClass("slideDown").addClass("slideUp");setTimeout(function(){if(a("#favorite-inside").hasClass("slideUp")){a("#favorite-inside").slideUp(100,function(){a("#favorite-first").removeClass("slide-down")})}},300)})}};a(document).ready(function(){adminMenu.init()});columns={init:function(){a(".hide-column-tog","#adv-settings").click(function(){var b=a(this).val();if(a(this).attr("checked")){a(".column-"+b).show()}else{a(".column-"+b).hide()}columns.save_manage_columns_state()})},save_manage_columns_state:function(){var b=a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()}})(jQuery);showNotice={warn:function(){var a=commonL10n.warnDelete||"";if(confirm(a)){return true}return false},note:function(a){alert(a)}};jQuery(document).ready(function(d){var f=false,a,e,c,b;d("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");d("div.updated, div.error").not(".below-h2, .inline").insertAfter(d("div.wrap h2:first"));d("#show-settings-link").click(function(){if(!d("#screen-options-wrap").hasClass("screen-options-open")){d("#contextual-help-link-wrap").css("visibility","hidden")}d("#screen-options-wrap").slideToggle("fast",function(){if(d(this).hasClass("screen-options-open")){d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#contextual-help-link-wrap").css("visibility","");d(this).removeClass("screen-options-open")}else{d("#show-settings-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("screen-options-open")}});return false});d("#contextual-help-link").click(function(){if(!d("#contextual-help-wrap").hasClass("contextual-help-open")){d("#screen-options-link-wrap").css("visibility","hidden")}d("#contextual-help-wrap").slideToggle("fast",function(){if(d(this).hasClass("contextual-help-open")){d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right.gif")'});d("#screen-options-link-wrap").css("visibility","");d(this).removeClass("contextual-help-open")}else{d("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});d(this).addClass("contextual-help-open")}});return false});d("tbody").children().children(".check-column").find(":checkbox").click(function(g){if("undefined"==g.shiftKey){return true}if(g.shiftKey){if(!f){return true}a=d(f).closest("form").find(":checkbox");e=a.index(f);c=a.index(this);b=d(this).attr("checked");if(0<e&&0<c&&e!=c){a.slice(e,c).attr("checked",function(){if(d(this).closest("tr").is(":visible")){return b?"checked":""}return""})}}f=this;return true});d("thead, tfoot").find(":checkbox").click(function(i){var j=d(this).attr("checked"),h="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,g=i.shiftKey||h;d(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if(d(this).closest("tr").is(":hidden")){return""}if(g){return d(this).attr("checked")?"":"checked"}else{if(j){return"checked"}}return""});d(this).closest("table").children("thead,  tfoot").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if(g){return""}else{if(j){return"checked"}}return""})});d("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");d("div.default-password-nag").hide();return false});d("textarea#newcontent").keydown(function(k){if(k.keyCode!=9){return true}var i=k.target,m=i.selectionStart,h=i.selectionEnd,l=i.value,g,j;k.stopPropagation();k.preventDefault();if(document.selection){i.focus();j=document.selection.createRange();j.text="\t"}else{if(m>=0){g=this.scrollTop;i.value=l.substring(0,m).concat("\t",l.substring(h));i.selectionStart=i.selectionEnd=m+1;this.scrollTop=g}}})});jQuery(document).ready(function(b){var a=b("span.turbo-nag","#user_info");if(!a.length||("undefined"!=typeof(google)&&google.gears)){return}if("undefined"!=typeof GearsFactory){return}else{try{if(("undefined"!=typeof window.ActiveXObject&&ActiveXObject("Gears.Factory"))||("undefined"!=typeof navigator.mimeTypes&&navigator.mimeTypes["application/x-googlegears"])){return}}catch(c){}}a.show()}); 
     1var showNotice,adminMenu,columns,validateForm;(function($){adminMenu={init:function(){var menu=$("#adminmenu");$(".wp-menu-toggle",menu).each(function(){var t=$(this),sub=t.siblings(".wp-submenu");if(sub.length){t.click(function(){adminMenu.toggle(sub)})}else{t.hide()}});this.favorites();$(".separator",menu).click(function(){if($("body").hasClass("folded")){adminMenu.fold(1);deleteUserSetting("mfold")}else{adminMenu.fold();setUserSetting("mfold","f")}return false});if($("body").hasClass("folded")){this.fold()}this.restoreMenuState()},restoreMenuState:function(){$("li.wp-has-submenu","#adminmenu").each(function(i,e){var v=getUserSetting("m"+i);if($(e).hasClass("wp-has-current-submenu")){return true}if("o"==v){$(e).addClass("wp-menu-open")}else{if("c"==v){$(e).removeClass("wp-menu-open")}}})},toggle:function(el){var id=el.slideToggle(150,function(){el.css("display","")}).parent().toggleClass("wp-menu-open").attr("id");if(id){$("li.wp-has-submenu","#adminmenu").each(function(i,e){if(id==e.id){var v=$(e).hasClass("wp-menu-open")?"o":"c";setUserSetting("m"+i,v)}})}return false},fold:function(off){if(off){$("body").removeClass("folded");$("#adminmenu li.wp-has-submenu").unbind()}else{$("body").addClass("folded");$("#adminmenu li.wp-has-submenu").hoverIntent({over:function(e){var m,b,h,o,f;m=$(this).find(".wp-submenu");b=$(this).offset().top+m.height()+1;h=$("#wpwrap").height();o=60+b-h;f=$(window).height()+$(window).scrollTop()-15;if(f<(b-o)){o=b-f}if(o>1){m.css({marginTop:"-"+o+"px"})}else{if(m.css("marginTop")){m.css({marginTop:""})}}m.addClass("sub-open")},out:function(){$(this).find(".wp-submenu").removeClass("sub-open").css({marginTop:""})},timeout:220,sensitivity:8,interval:100})}},favorites:function(){$("#favorite-inside").width($("#favorite-actions").width()-4);$("#favorite-toggle, #favorite-inside").bind("mouseenter",function(){$("#favorite-inside").removeClass("slideUp").addClass("slideDown");setTimeout(function(){if($("#favorite-inside").hasClass("slideDown")){$("#favorite-inside").slideDown(100);$("#favorite-first").addClass("slide-down")}},200)}).bind("mouseleave",function(){$("#favorite-inside").removeClass("slideDown").addClass("slideUp");setTimeout(function(){if($("#favorite-inside").hasClass("slideUp")){$("#favorite-inside").slideUp(100,function(){$("#favorite-first").removeClass("slide-down")})}},300)})}};$(document).ready(function(){adminMenu.init()});columns={init:function(){$(".hide-column-tog","#adv-settings").click(function(){var column=$(this).val();if($(this).attr("checked")){$(".column-"+column).show()}else{$(".column-"+column).hide()}columns.save_manage_columns_state()})},save_manage_columns_state:function(){var hidden=$(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",");$.post(ajaxurl,{action:"hidden-columns",hidden:hidden,screenoptionnonce:$("#screenoptionnonce").val(),page:pagenow})}};$(document).ready(function(){columns.init()});validateForm=function(form){return !$(form).find(".form-required").filter(function(){return $("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){$(this).closest(".form-invalid").removeClass("form-invalid")}).size()}})(jQuery);showNotice={warn:function(){var msg=commonL10n.warnDelete||"";if(confirm(msg)){return true}return false},note:function(text){alert(text)}};jQuery(document).ready(function($){var lastClicked=false,checks,first,last,checked;$("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");$("div.updated, div.error").not(".below-h2, .inline").insertAfter($("div.wrap h2:first"));$("#show-settings-link").click(function(){if(!$("#screen-options-wrap").hasClass("screen-options-open")){$("#contextual-help-link-wrap").css("visibility","hidden")}$("#screen-options-wrap").slideToggle("fast",function(){if($(this).hasClass("screen-options-open")){$("#show-settings-link").css({backgroundImage:'url("images/screen-options-right.gif")'});$("#contextual-help-link-wrap").css("visibility","");$(this).removeClass("screen-options-open")}else{$("#show-settings-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});$(this).addClass("screen-options-open")}});return false});$("#contextual-help-link").click(function(){if(!$("#contextual-help-wrap").hasClass("contextual-help-open")){$("#screen-options-link-wrap").css("visibility","hidden")}$("#contextual-help-wrap").slideToggle("fast",function(){if($(this).hasClass("contextual-help-open")){$("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right.gif")'});$("#screen-options-link-wrap").css("visibility","");$(this).removeClass("contextual-help-open")}else{$("#contextual-help-link").css({backgroundImage:'url("images/screen-options-right-up.gif")'});$(this).addClass("contextual-help-open")}});return false});$("tbody").children().children(".check-column").find(":checkbox").click(function(e){if("undefined"==e.shiftKey){return true}if(e.shiftKey){if(!lastClicked){return true}checks=$(lastClicked).closest("form").find(":checkbox");first=checks.index(lastClicked);last=checks.index(this);checked=$(this).attr("checked");if(0<first&&0<last&&first!=last){checks.slice(first,last).attr("checked",function(){if($(this).closest("tr").is(":visible")){return checked?"checked":""}return""})}}lastClicked=this;return true});$("thead, tfoot").find(":checkbox").click(function(e){var c=$(this).attr("checked"),kbtoggle="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,toggle=e.shiftKey||kbtoggle;$(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if($(this).closest("tr").is(":hidden")){return""}if(toggle){return $(this).attr("checked")?"":"checked"}else{if(c){return"checked"}}return""});$(this).closest("table").children("thead,  tfoot").filter(":visible").children().children(".check-column").find(":checkbox").attr("checked",function(){if(toggle){return""}else{if(c){return"checked"}}return""})});$("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");$("div.default-password-nag").hide();return false});$("#newcontent").keydown(function(e){if(e.keyCode!=9){return true}var el=e.target,selStart=el.selectionStart,selEnd=el.selectionEnd,val=el.value,scroll,sel;try{this.lastKey=9}catch(err){}if(document.selection){el.focus();sel=document.selection.createRange();sel.text="\t"}else{if(selStart>=0){scroll=this.scrollTop;el.value=val.substring(0,selStart).concat("\t",val.substring(selEnd));el.selectionStart=el.selectionEnd=selStart+1;this.scrollTop=scroll}}if(e.stopPropagation){e.stopPropagation()}if(e.preventDefault){e.preventDefault()}});$("#newcontent").blur(function(e){if(this.lastKey&&9==this.lastKey){this.focus()}})});jQuery(document).ready(function($){var turboNag=$("span.turbo-nag","#user_info");if(!turboNag.length||("undefined"!=typeof(google)&&google.gears)){return}if("undefined"!=typeof GearsFactory){return}else{try{if(("undefined"!=typeof window.ActiveXObject&&ActiveXObject("Gears.Factory"))||("undefined"!=typeof navigator.mimeTypes&&navigator.mimeTypes["application/x-googlegears"])){return}}catch(e){}}turboNag.show()}); 
  • trunk/wp-includes/script-loader.php

    r13543 r13548  
    6161    $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20090102' ); 
    6262 
    63     $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20100218' ); 
     63    $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20100302' ); 
    6464    $scripts->add_data( 'common', 'group', 1 ); 
    6565    $scripts->localize( 'common', 'commonL10n', array( 
Note: See TracChangeset for help on using the changeset viewer.