Changeset 4913


Ignore:
Timestamp:
01/12/10 10:35:14 (5 years ago)
Author:
garry.yao
Message:

Enable ARIA support for sourcearea editing blocks.

Location:
CKEditor/branches/features/aria/_source
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/branches/features/aria/_source/lang/en.js

    r4912 r4913  
    3333         */ 
    3434        editorTitle             : 'Rich text editor, %1', 
    35         editorVoiceLabel : 'Press ALT+F10 moves to toolbar, ALT+F11 moves to elementspath bar.', 
     35        editorWysiwygModeVoiceLabel : 'Wysiwyg mode, press ALT+F10 moves to toolbar, ALT+F11 moves to elementspath bar.SHIFT+F10 opens contextmenu.', 
     36        editorSourceModeVoiceLabel : 'Source mode, press ALT+F10 moves to toolbar.', 
    3637 
    3738        // Toolbar buttons without dialogs. 
  • CKEditor/branches/features/aria/_source/plugins/sourcearea/plugin.js

    r4858 r4913  
    1 /* 
     1/* 
    22Copyright (c) 2003-2010, CKSource - Frederico Knabben. All rights reserved. 
    33For licensing, see LICENSE.html or http://ckeditor.com/license 
     
    1717                var sourcearea = CKEDITOR.plugins.sourcearea; 
    1818 
     19                var sourceareaLabel = editor.lang.editorTitle.replace( '%1', editor.name ), 
     20                         sourceareaDescriptiveLabel = editor.lang.editorSourceModeVoiceLabel; 
     21 
    1922                editor.on( 'editingBlockReady', function() 
    2023                        { 
     
    2932                                                                holderElement.setStyle( 'position', 'relative' ); 
    3033 
     34                                                        // Accessibility label for iframe document. 
     35                                                        var labelId = editor.name + '_editing_textarea_label', 
     36                                                                 descriptionId = editor.name + '_editing_textarea_desc'; 
     37 
    3138                                                        // Create the source area <textarea>. 
    3239                                                        editor.textarea = textarea = new CKEDITOR.dom.element( 'textarea' ); 
     
    3441                                                                { 
    3542                                                                        dir : 'ltr', 
    36                                                                         tabIndex : -1 
     43                                                                        tabIndex : -1, 
     44                                                                        'role' : 'textbox', 
     45                                                                        'aria-labelledby' : labelId, 
     46                                                                        'aria-describedby' : descriptionId 
    3747                                                                }); 
    3848                                                        textarea.addClass( 'cke_source' ); 
     
    8898                                                        // <textarea> to it. 
    8999                                                        holderElement.setHtml( '' ); 
     100 
     101                                                        var label = CKEDITOR.dom.element.createFromHtml( 
     102                                                                '<div style="display:none">' + 
     103                                                                        '<span id="' + labelId + '">' + 
     104                                                                                CKEDITOR.tools.htmlEncode( sourceareaLabel ) + 
     105                                                                        '</span>' + 
     106                                                                        '<span id="' + descriptionId + '">' + 
     107                                                                                CKEDITOR.tools.htmlEncode( sourceareaDescriptiveLabel ) + 
     108                                                                        '</span>' + 
     109                                                                '</div>' 
     110                                                                , CKEDITOR.document ); 
     111 
    90112                                                        holderElement.append( textarea ); 
    91113                                                        textarea.setStyles( styles ); 
     114                                                        label.insertBefore( textarea ); 
    92115 
    93116                                                        textarea.on( 'blur', function() 
  • CKEditor/branches/features/aria/_source/plugins/wysiwygarea/plugin.js

    r4912 r4913  
    243243 
    244244                        var frameLabel = editor.lang.editorTitle.replace( '%1', editor.name ), 
    245                                  frameDescriptiveLabel = editor.lang.editorVoiceLabel; 
     245                                 frameDescriptiveLabel = editor.lang.editorWysiwygModeVoiceLabel; 
    246246 
    247247                        editor.on( 'editingBlockReady', function() 
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy