Index: /CKEditor/trunk/_source/lang/en.js
===================================================================
--- /CKEditor/trunk/_source/lang/en.js (revision 3482)
+++ /CKEditor/trunk/_source/lang/en.js (revision 3483)
@@ -528,4 +528,6 @@
{
label : 'Styles',
+ voiceLabel : 'Styles',
+ panelVoiceLabel : 'Select a style',
panelTitle1 : 'Block Styles',
panelTitle2 : 'Inline Styles',
@@ -536,5 +538,7 @@
{
label : 'Format',
+ voiceLabel : 'Format',
panelTitle : 'Paragraph Format',
+ panelVoiceLabel : 'Select a paragraph format',
tag_p : 'Normal',
@@ -553,5 +557,7 @@
{
label : 'Font',
- panelTitle : 'Font Name'
+ voiceLabel : 'Font',
+ panelTitle : 'Font Name',
+ panelVoiceLabel : 'Select a font'
},
@@ -559,5 +565,7 @@
{
label : 'Size',
- panelTitle : 'Font Size'
+ voiceLabel : 'Font Size',
+ panelTitle : 'Font Size',
+ panelVoiceLabel : 'Select a font size'
},
Index: /CKEditor/trunk/_source/plugins/floatpanel/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/floatpanel/plugin.js (revision 3482)
+++ /CKEditor/trunk/_source/plugins/floatpanel/plugin.js (revision 3483)
@@ -104,4 +104,5 @@
var element = this.element,
iframe = this._.iframe,
+ definition = this._.definition,
position = offsetParent.getDocumentPosition( element.getDocument() ),
rtl = this._.dir == 'rtl';
@@ -200,4 +201,15 @@
setTimeout( function()
{
+ if ( definition.voiceLabel )
+ {
+ if ( CKEDITOR.env.gecko )
+ {
+ var container = iframe.getParent();
+ container.setAttribute( 'role', 'region' );
+ container.setAttribute( 'title', definition.voiceLabel );
+ iframe.setAttribute( 'role', 'region' );
+ iframe.setAttribute( 'title', ' ' );
+ }
+ }
iframe.$.contentWindow.focus();
}, 0);
Index: /CKEditor/trunk/_source/plugins/font/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/font/plugin.js (revision 3482)
+++ /CKEditor/trunk/_source/plugins/font/plugin.js (revision 3483)
@@ -31,4 +31,5 @@
label : lang.label,
title : lang.panelTitle,
+ voiceLabel : lang.voiceLabel,
className : 'cke_' + ( styleType == 'size' ? 'fontSize' : 'font' ),
multiSelect : false,
@@ -36,5 +37,6 @@
panel :
{
- css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ]
+ css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+ voiceLabel : lang.panelVoiceLabel
},
Index: /CKEditor/trunk/_source/plugins/format/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/format/plugin.js (revision 3482)
+++ /CKEditor/trunk/_source/plugins/format/plugin.js (revision 3483)
@@ -28,4 +28,5 @@
label : lang.label,
title : lang.panelTitle,
+ voiceLabel : lang.voiceLabel,
className : 'cke_format',
multiSelect : false,
@@ -33,5 +34,6 @@
panel :
{
- css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ]
+ css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+ voiceLabel : lang.panelVoiceLabel
},
Index: /CKEditor/trunk/_source/plugins/richcombo/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/richcombo/plugin.js (revision 3482)
+++ /CKEditor/trunk/_source/plugins/richcombo/plugin.js (revision 3483)
@@ -187,5 +187,7 @@
' onkeydown="CKEDITOR.tools.callFunction( ', keyDownFn, ', event, this );"' +
' onclick="CKEDITOR.tools.callFunction(', clickFn, ', this); return false;">' +
- ' ' +
+ '' +
+ '' + ( this.voiceLabel ? this.voiceLabel + ' ' : '' ) + '' +
+ ' ' +
'' +
'' +
Index: /CKEditor/trunk/_source/plugins/stylescombo/plugin.js
===================================================================
--- /CKEditor/trunk/_source/plugins/stylescombo/plugin.js (revision 3482)
+++ /CKEditor/trunk/_source/plugins/stylescombo/plugin.js (revision 3483)
@@ -21,4 +21,5 @@
label : lang.label,
title : lang.panelTitle,
+ voiceLabel : lang.voiceLabel,
className : 'cke_styles',
multiSelect : true,
@@ -26,5 +27,6 @@
panel :
{
- css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ]
+ css : [ config.contentsCss, CKEDITOR.getUrl( editor.skinPath + 'editor.css' ) ],
+ voiceLabel : lang.panelVoiceLabel
},
Index: /CKEditor/trunk/_source/skins/v2/toolbar.css
===================================================================
--- /CKEditor/trunk/_source/skins/v2/toolbar.css (revision 3482)
+++ /CKEditor/trunk/_source/skins/v2/toolbar.css (revision 3483)
@@ -157,4 +157,10 @@
padding-left: 3px;
vertical-align: 3px;
+}
+
+.cke_skin_v2 .cke_accessibility
+{
+ position: absolute;
+ top: -1000000px;
}