Index: _source/core/_bootstrap.js =================================================================== --- _source/core/_bootstrap.js (revision 3503) +++ _source/core/_bootstrap.js (working copy) @@ -7,6 +7,25 @@ * @fileOverview API initialization code. */ +(function() +{ + // Check is High Contrast is active by creating a temporary element with a + // background image. + + var hcDetect = CKEDITOR.dom.element.createFromHtml( + '
', CKEDITOR.document ); + + hcDetect.appendTo( CKEDITOR.document.getHead() ); + + // Update CKEDITOR.env. + if ( CKEDITOR.env.hc = ( hcDetect.getComputedStyle( 'background-image' ) == 'none' ) ) + CKEDITOR.env.cssClass += ' cke_hc'; + + hcDetect.remove(); +})(); + // Load core plugins. CKEDITOR.plugins.load( CKEDITOR.config.corePlugins.split( ',' ), function() { Index: _source/plugins/colorbutton/plugin.js =================================================================== --- _source/plugins/colorbutton/plugin.js (revision 3503) +++ _source/plugins/colorbutton/plugin.js (working copy) @@ -21,7 +21,7 @@ { editor.ui.add( name, CKEDITOR.UI_PANELBUTTON, { - label : lang.label, + label : title, title : title, className : 'cke_button_' + name.toLowerCase(), Index: _source/skins/office2003/dialog.css =================================================================== --- _source/skins/office2003/dialog.css (revision 3503) +++ _source/skins/office2003/dialog.css (working copy) @@ -418,6 +418,7 @@ background-position: -20px -655px; position: absolute; cursor: pointer; + text-align: center; height: 21px; width: 21px; top: 4px; @@ -426,6 +427,11 @@ _background-image: url(images/sprites_ie6.png); } +.cke_skin_office2003 .cke_dialog_close_button span +{ + display: none; +} + .cke_skin_office2003 .cke_ltr .cke_dialog_close_button { right: 10px; @@ -592,3 +598,33 @@ { color: #a0a0a0; } + +/* High Contrast Mode */ +.cke_skin_office2003 .cke_hc .cke_dialog_title, +.cke_skin_office2003 .cke_hc .cke_dialog_tabs, +.cke_skin_office2003 .cke_hc .cke_dialog_contents, +.cke_skin_office2003 .cke_hc .cke_dialog_footer +{ + border-left: 1px solid; + border-right: 1px solid; +} + +.cke_skin_office2003 .cke_hc .cke_dialog_title +{ + border-top: 1px solid; +} + +.cke_skin_office2003 .cke_hc .cke_dialog_footer +{ + border-bottom: 1px solid; +} + +.cke_skin_office2003 .cke_hc .cke_dialog_close_button span +{ + display: inline; + cursor: pointer; + cursor: hand; + font-weight: bold; + position: relative; + top: 3px; +} Index: _source/skins/office2003/richcombo.css =================================================================== --- _source/skins/office2003/richcombo.css (revision 3503) +++ _source/skins/office2003/richcombo.css (working copy) @@ -23,6 +23,12 @@ opacity: 0.70; /* Safari, Opera and Mozilla */ } +.cke_skin_office2003 .cke_hc .cke_rcombo a +{ + filter: alpha(opacity=100); /* IE */ + opacity: 1.0; /* Safari, Opera and Mozilla */ +} + .cke_skin_office2003 .cke_rcombo .cke_label { display: inline-block; @@ -38,6 +44,12 @@ _background-repeat: repeat-x; } +.cke_skin_office2003 .cke_hc .cke_rcombo .cke_label +{ + filter: alpha(opacity=100); + opacity: 1.0; +} + .cke_skin_office2003 .cke_rtl .cke_rcombo .cke_label { padding-right: 4px; @@ -171,6 +183,12 @@ opacity: 0.3; /* Safari, Opera and Mozilla */ } +.cke_skin_office2003 .cke_hc .cke_rcombo .cke_disabled .cke_label +{ + filter: alpha(opacity=70); + opacity: 0.7; +} + .cke_skin_office2003 .cke_rcombo .cke_disabled .cke_text, .cke_skin_office2003 .cke_rcombo .cke_disabled .cke_openbutton { @@ -178,6 +196,13 @@ opacity: 0.5; /* Safari, Opera and Mozilla */ } +.cke_skin_office2003 .cke_hc .cke_rcombo .cke_disabled .cke_text, +.cke_skin_office2003 .cke_hc .cke_rcombo .cke_disabled .cke_openbutton +{ + filter: alpha(opacity=80); + opacity: 0.8; +} + .cke_skin_office2003 .cke_rcombo .cke_disabled .cke_text { color: #fff; Index: _source/skins/office2003/toolbar.css =================================================================== --- _source/skins/office2003/toolbar.css (revision 3503) +++ _source/skins/office2003/toolbar.css (working copy) @@ -134,6 +134,13 @@ _margin: 3px 1px 1px 1px; } +.cke_skin_office2003 .cke_hc .cke_button a, +.cke_skin_office2003 .cke_hc .cke_button a.cke_off +{ + opacity: 1.0; + filter: alpha(opacity=100); +} + .cke_skin_office2003 .cke_button a.cke_on { border: solid 1px #316ac5; @@ -144,6 +151,12 @@ _margin: 2px 0 0 0; } +.cke_skin_office2003 .cke_hc .cke_button a.cke_on +{ + padding: 0 2px !important; + border-width: 3px; +} + .cke_skin_office2003 .cke_button a.cke_disabled, .cke_skin_office2003 .cke_button a:hover.cke_disabled, .cke_skin_office2003 .cke_button a:focus.cke_disabled, @@ -158,6 +171,13 @@ _margin: 3px 1px 1px 1px; } +.cke_skin_office2003 .cke_hc .cke_button a.cke_disabled, +.cke_skin_office2003 .cke_browser_ie.cke_hc a:hover.cke_button .cke_disabled +{ + filter: alpha(opacity=60); + opacity: 0.6; +} + .cke_skin_office2003 .cke_button a:hover.cke_on, .cke_skin_office2003 .cke_button a:focus.cke_on, .cke_skin_office2003 .cke_button a:active.cke_on, /* IE */ @@ -172,8 +192,20 @@ vertical-align: top; _margin: 2px 0 0 0; + padding: 2px 4px; } +.cke_skin_office2003 .cke_hc .cke_button a:hover.cke_on, +.cke_skin_office2003 .cke_hc .cke_button a:focus.cke_on, +.cke_skin_office2003 .cke_hc .cke_button a:active.cke_on, /* IE */ +.cke_skin_office2003 .cke_hc .cke_button a:hover.cke_off, +.cke_skin_office2003 .cke_hc .cke_button a:focus.cke_off, +.cke_skin_office2003 .cke_hc .cke_button a:active.cke_off /* IE */ +{ + padding: 0 2px !important; + border-width: 3px; +} + .cke_skin_office2003 .cke_button .cke_icon { background-image: url(icons.png); @@ -208,6 +240,22 @@ _background-image: none; } +.cke_skin_office2003 .cke_hc .cke_button .cke_label +{ + display: inline-block; +} + +.cke_skin_office2003 .cke_hc .cke_button .cke_icon +{ + display: none; +} + +.cke_skin_office2003 .cke_accessibility +{ + position: absolute; + top: -1000000px; +} + .cke_skin_office2003 .cke_button .cke_buttonarrow { display: inline-block; @@ -287,6 +335,11 @@ float: left; } +.cke_skin_office2003 .cke_browser_gecko.cke_hc .cke_button .cke_icon +{ + display: none; +} + .cke_skin_office2003 .cke_rtl.cke_browser_gecko .cke_toolbar, .cke_skin_office2003 .cke_rtl.cke_browser_gecko .cke_button a, .cke_skin_office2003 .cke_rtl.cke_browser_gecko .cke_button a.cke_off, Index: _source/skins/v2/dialog.css =================================================================== --- _source/skins/v2/dialog.css (revision 3503) +++ _source/skins/v2/dialog.css (working copy) @@ -412,6 +412,7 @@ background-position: -16px -651px; position: absolute; cursor: pointer; + text-align: center; height: 20px; width: 20px; top: 5px; @@ -420,6 +421,11 @@ _background-image: url(images/sprites_ie6.png); } +.cke_skin_v2 .cke_dialog_close_button span +{ + display: none; +} + .cke_skin_v2 .cke_dialog_close_button:hover { background-position: -16px -687px; @@ -591,3 +597,33 @@ { color: #a0a0a0; } + +/* High Contrast Mode */ +.cke_skin_v2 .cke_hc .cke_dialog_title, +.cke_skin_v2 .cke_hc .cke_dialog_tabs, +.cke_skin_v2 .cke_hc .cke_dialog_contents, +.cke_skin_v2 .cke_hc .cke_dialog_footer +{ + border-left: 1px solid; + border-right: 1px solid; +} + +.cke_skin_v2 .cke_hc .cke_dialog_title +{ + border-top: 1px solid; +} + +.cke_skin_v2 .cke_hc .cke_dialog_footer +{ + border-bottom: 1px solid; +} + +.cke_skin_v2 .cke_hc .cke_dialog_close_button span +{ + display: inline; + cursor: pointer; + cursor: hand; + font-weight: bold; + position: relative; + top: 3px; +} Index: _source/skins/v2/richcombo.css =================================================================== --- _source/skins/v2/richcombo.css (revision 3503) +++ _source/skins/v2/richcombo.css (working copy) @@ -21,6 +21,12 @@ opacity: 0.70; /* Safari, Opera and Mozilla */ } +.cke_skin_v2 .cke_hc .cke_rcombo a +{ + filter: alpha(opacity=100); /* IE */ + opacity: 1.0; /* Safari, Opera and Mozilla */ +} + .cke_skin_v2 .cke_rcombo .cke_label { display: inline-block; @@ -33,6 +39,12 @@ background-color: #f1f1e3; /* Because of IE6+ClearType */ } +.cke_skin_v2 .cke_hc .cke_rcombo .cke_label +{ + filter: alpha(opacity=100); + opacity: 1.0; +} + .cke_skin_v2 .cke_rtl .cke_rcombo .cke_label { padding-right: 4px; @@ -166,6 +178,12 @@ opacity: 0.3; /* Safari, Opera and Mozilla */ } +.cke_skin_v2 .cke_hc .cke_rcombo .cke_disabled .cke_label +{ + filter: alpha(opacity=70); + opacity: 0.7; +} + .cke_skin_v2 .cke_rcombo .cke_disabled .cke_text, .cke_skin_v2 .cke_rcombo .cke_disabled .cke_openbutton { @@ -173,6 +191,13 @@ opacity: 0.5; /* Safari, Opera and Mozilla */ } +.cke_skin_v2 .cke_hc .cke_rcombo .cke_disabled .cke_text, +.cke_skin_v2 .cke_hc .cke_rcombo .cke_disabled .cke_openbutton +{ + filter: alpha(opacity=80); + opacity: 0.8; +} + .cke_skin_v2 .cke_rcombo .cke_disabled .cke_text { color: #fff; Index: _source/skins/v2/toolbar.css =================================================================== --- _source/skins/v2/toolbar.css (revision 3503) +++ _source/skins/v2/toolbar.css (working copy) @@ -110,14 +110,28 @@ height: 18px; } +.cke_skin_v2 .cke_hc .cke_button a, +.cke_skin_v2 .cke_hc .cke_button a.cke_off +{ + opacity: 1.0; + filter: alpha(opacity=100); +} + .cke_skin_v2 .cke_button a.cke_on { border: solid 1px #316ac5; background-color: #a3d7ff; filter: alpha(opacity=100); /* IE */ opacity: 1; /* Safari, Opera and Mozilla */ + padding: 2px 4px; } +.cke_skin_v2 .cke_hc .cke_button a.cke_on +{ + padding: 0 2px !important; + border-width: 3px; +} + .cke_skin_v2 .cke_button a.cke_disabled, .cke_skin_v2 .cke_browser_ie a:hover.cke_button .cke_disabled { @@ -127,6 +141,13 @@ opacity : 0.3; /* Safari, Opera and Mozilla */ } +.cke_skin_v2 .cke_hc .cke_button a.cke_disabled, +.cke_skin_v2 .cke_browser_ie.cke_hc a:hover.cke_button .cke_disabled +{ + filter: alpha(opacity=60); + opacity: 0.6; +} + .cke_skin_v2 .cke_button a:hover.cke_on, .cke_skin_v2 .cke_button a:focus.cke_on, .cke_skin_v2 .cke_button a:active.cke_on, /* IE */ @@ -138,8 +159,20 @@ background-color: #dff1ff; filter: alpha(opacity=100); /* IE */ opacity: 1; /* Safari, Opera and Mozilla */ + padding: 2px 4px; } +.cke_skin_v2 .cke_hc .cke_button a:hover.cke_on, +.cke_skin_v2 .cke_hc .cke_button a:focus.cke_on, +.cke_skin_v2 .cke_hc .cke_button a:active.cke_on, /* IE */ +.cke_skin_v2 .cke_hc .cke_button a:hover.cke_off, +.cke_skin_v2 .cke_hc .cke_button a:focus.cke_off, +.cke_skin_v2 .cke_hc .cke_button a:active.cke_off /* IE */ +{ + padding: 0 2px !important; + border-width: 3px; +} + .cke_skin_v2 .cke_button .cke_icon { background-image: url(icons.png); @@ -158,6 +191,16 @@ vertical-align: 3px; } +.cke_skin_v2 .cke_hc .cke_button .cke_label +{ + display: inline-block; +} + +.cke_skin_v2 .cke_hc .cke_button .cke_icon +{ + display: none; +} + .cke_skin_v2 .cke_accessibility { position: absolute; @@ -242,6 +285,11 @@ float: left; } +.cke_skin_v2 .cke_browser_gecko.cke_hc .cke_button .cke_icon +{ + display: none; +} + .cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_toolbar, .cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button a, .cke_skin_v2 .cke_rtl.cke_browser_gecko .cke_button a.cke_off, Index: _source/themes/default/theme.js =================================================================== --- _source/themes/default/theme.js (revision 3503) +++ _source/themes/default/theme.js (working copy) @@ -99,7 +99,9 @@ ' cke_', editor.lang.dir, '" style="position:absolute">' + '