WordPress.org

Make WordPress Core

Ticket #12424: opera-tab.12424.diff

File opera-tab.12424.diff, 1.1 KB (added by filosofo, 6 years ago)
  • wp-admin/js/common.dev.js

     
    269269        }); 
    270270 
    271271        // tab in textareas 
    272         $('textarea#newcontent').keydown(function(e) { 
     272        $('#newcontent').keydown(function(e) { 
    273273                if ( e.keyCode != 9 ) 
    274274                        return true; 
    275275 
    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 ) { 
    282283                        el.focus(); 
     
    288289                        el.selectionStart = el.selectionEnd = selStart + 1; 
    289290                        this.scrollTop = scroll; 
    290291                } 
     292                 
     293                if ( e.stopPropagation ) 
     294                        e.stopPropagation(); 
     295                if ( e.preventDefault ) 
     296                        e.preventDefault(); 
    291297        }); 
     298         
     299        $('#newcontent').blur(function(e) { 
     300                if ( this.lastKey && 9 == this.lastKey ) 
     301                        this.focus(); 
     302        }); 
    292303}); 
    293304 
    294305jQuery(document).ready( function($){