From d8db6b086880c53b0a9e3277bcb5cd14270f2ea9 Mon Sep 17 00:00:00 2001 From: fredck Date: Thu, 20 Dec 2012 13:48:13 +0100 Subject: [PATCH] #9368: Fixed ARIA attributes for toolbar buttons state. --- plugins/button/plugin.js | 9 +++++++++ plugins/richcombo/plugin.js | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/plugins/button/plugin.js b/plugins/button/plugin.js index 7a382193aa5..f97656a981d 100644 --- a/plugins/button/plugin.js +++ b/plugins/button/plugin.js @@ -292,6 +292,15 @@ if ( element ) { element.setState( state, 'cke_button' ); + + state == CKEDITOR.TRISTATE_DISABLED ? + element.setAttribute( 'aria-disabled', true ) : + element.removeAttribute( 'aria-disabled' ); + + state == CKEDITOR.TRISTATE_ON ? + element.setAttribute( 'aria-pressed', true ) : + element.removeAttribute( 'aria-pressed' ); + return true; } else return false; diff --git a/plugins/richcombo/plugin.js b/plugins/richcombo/plugin.js index 1703a7ed73d..b70d25c0d79 100644 --- a/plugins/richcombo/plugin.js +++ b/plugins/richcombo/plugin.js @@ -359,6 +359,10 @@ CKEDITOR.plugins.add( 'richcombo', { var el = this.document.getById( 'cke_' + this.id ); el.setState( state, 'cke_combo' ); + state == CKEDITOR.TRISTATE_DISABLED ? + el.setAttribute( 'aria-disabled', true ) : + el.removeAttribute( 'aria-disabled' ); + this._.state = state; },