Ticket #3052: 3052.patch

File 3052.patch, 3.8 KB (added by Martin Kou, 16 years ago)
  • _source/plugins/wysiwygarea/plugin.js

     
    180180                                                // must be done after setting the "src", to avoid the
    181181                                                // "secure/unsecure" message under HTTPS.
    182182                                                mainElement.append( iframe );
     183
     184
     185                                                if ( CKEDITOR.env.gecko )
     186                                                {
     187                                                        // Accessibility attributes for Firefox.
     188                                                        mainElement.setAttributes(
     189                                                                {
     190                                                                        role : 'region',
     191                                                                        title : 'CKEditor ' + editor.name + '. Type in text.'
     192                                                                } );
     193                                                        iframe.setAttributes(
     194                                                                {
     195                                                                        role : 'region',
     196                                                                        title : ' '
     197                                                                } );
     198                                                }
     199                                                else if ( CKEDITOR.env.ie )
     200                                                {
     201                                                        // Accessibility label for IE.
     202                                                        var label = CKEDITOR.document.createElement( 'label' );
     203                                                        label.setStyles( {
     204                                                                position : 'absolute',
     205                                                                'top' : '-1000000px',
     206                                                                left : '-1000000px'
     207                                                        } );
     208                                                        label.append( CKEDITOR.document.createText( 'CKEditor ' + editor.name ) );
     209                                                        label.insertBefore( iframe );
     210                                                }
    183211                                        };
    184212
    185213                                        // The script that is appended to the data being loaded. It
  • _source/plugins/toolbar/plugin.js

     
    1313        var toolbox = function()
    1414        {
    1515                this.toolbars = [];
     16                this.focusCommandExecuted = false;
    1617        };
    1718
    1819        toolbox.prototype.focus = function()
     
    3738                        exec : function( editor )
    3839                        {
    3940                                if ( editor.toolbox )
     41                                {
     42                                        editor.toolbox.focusCommandExecuted = true;
    4043                                        editor.toolbox.focus();
     44                                }
    4145                        }
    4246                }
    4347        };
     
    155159
    156160                                                                        itemObj.toolbar = toolbarObj;
    157161                                                                        itemObj.onkey = itemKeystroke;
     162
     163                                                                        /*
     164                                                                         * Fix for #3052:
     165                                                                         * Prevent JAWS from focusing the toolbar after document load.
     166                                                                         */
     167                                                                        itemObj.onfocus = function()
     168                                                                        {
     169                                                                                if ( !editor.toolbox.focusCommandExecuted )
     170                                                                                        editor.focus();
     171                                                                        };
    158172                                                                }
    159173                                                        }
    160174
  • _source/plugins/richcombo/plugin.js

     
    117117                        output.push(
    118118                                 '">' +
    119119                                        '<span class=cke_label>', this.label, '</span>' +
    120                                         '<a hidefocus=true title="', this.title, '" href="javascript:void(\'', this.label, '\')"' );
     120                                        '<a hidefocus=true title="', this.title, '" tabindex="-1" href="javascript:void(\'', this.label, '\')"' );
    121121
    122122                        // Some browsers don't cancel key events in the keydown but in the
    123123                        // keypress.
  • _source/plugins/button/plugin.js

     
    173173
    174174                output.push(
    175175                                ' onkeydown="return CKEDITOR.ui.button._.keydown(', index, ', event);"' +
     176                                ' onfocus="return CKEDITOR.ui.button._.focus(', index, ', event);"' +
    176177                                ' onclick="return CKEDITOR.ui.button._.click(', index, ', event);">' +
    177178                                        '<span class="cke_icon"></span>' +
    178179                                        '<span class="cke_label">', this.label, '</span>' +
     
    234235                        ev = new CKEDITOR.dom.event( ev );
    235236                        return ( instance.onkey( instance, ev.getKeystroke() ) !== false );
    236237                }
     238        },
     239
     240        focus : function( index, ev )
     241        {
     242                var instance = CKEDITOR.ui.button._.instances[ index ];
     243
     244                if ( instance.onfocus )
     245                        return ( instance.onfocus( instance, new CKEDITOR.dom.event( ev ) ) !== false );
    237246        }
    238247};
    239248
© 2003 – 2022, CKSource sp. z o.o. sp.k. All rights reserved. | Terms of use | Privacy policy