Skip to content

Commit

Permalink
Merge branch 'master' into major
Browse files Browse the repository at this point in the history
  • Loading branch information
Reinmar committed Feb 13, 2013
2 parents 6c8624e + df9435d commit 87e128d
Show file tree
Hide file tree
Showing 17 changed files with 87 additions and 65 deletions.
17 changes: 17 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,23 @@
CKEditor 4 Changelog
====================

## CKEditor 4.0.2

* [#9779](http://dev.ckeditor.com/ticket/9779): Fixed overriding CKEDITOR.getUrl with CKEDITOR_GETURL.
* [#9772](http://dev.ckeditor.com/ticket/9772): Custom buttons in dialog footer have different look and size (Moono, Kama).
* [#9029](http://dev.ckeditor.com/ticket/9029): Custom styles added with styleSet.add() are displayed in wrong order.
* [#9887](http://dev.ckeditor.com/ticket/9887): Disable magicline when editor.readOnly is set.
* [#9882](http://dev.ckeditor.com/ticket/9882): Fixed empty document title on getData() if set via docprops dialog.
* [#9773](http://dev.ckeditor.com/ticket/9773): Fixed rendering problems with select fields in Kama.
* [#9851](http://dev.ckeditor.com/ticket/9851): SelectionChange isn't fired when mouse selection finished outside editable.
* [#9903](http://dev.ckeditor.com/ticket/9903): [Inline editor] Bad positioning of floating space with page h-scroll.
* [#9872](http://dev.ckeditor.com/ticket/9872): Editor.checkDirty() returns true when called onload. Removed obsolete editor.mayBeDirty flag.
* [#9893](http://dev.ckeditor.com/ticket/9893): Fixed broken toolbar when editing mixed-dir content in quirks mode.
* [#9845](http://dev.ckeditor.com/ticket/9845): Fixed TAB navigation in the Link dialog and the Anchors option is used and no anchors are available.
* [#9883](http://dev.ckeditor.com/ticket/9883): Maximizing was making the entire page editable with divarea based editors.
* [#9940](http://dev.ckeditor.com/ticket/9940): With Firefox, navigating back to a page with the editor was making the entire page editable.
* [#9966](http://dev.ckeditor.com/ticket/9966): Fixed: Unable to type square brackets with French keyboard layout. Changed magicline keystrokes.

## CKEditor 4.0.1

Fixed issues:
Expand Down
2 changes: 1 addition & 1 deletion ckeditor.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

// Compressed version of core/ckeditor_base.js. See original for instructions.
/*jsl:ignore*/
window.CKEDITOR||(window.CKEDITOR=function(){var b={timestamp:"",version:"%VERSION%",revision:"%REV%",rnd:Math.floor(900*Math.random())+100,_:{pending:[]},status:"unloaded",basePath:function(){var a=window.CKEDITOR_BASEPATH||"";if(!a)for(var b=document.getElementsByTagName("script"),c=0;c<b.length;c++){var d=b[c].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(d){a=d[1];break}}-1==a.indexOf(":/")&&(a=0===a.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+a:location.href.match(/^[^\?]*\/(?:)/)[0]+a);if(!a)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return a}(),getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(){function a(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",a,!1),b()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",a),b())}catch(d){}}function b(){for(var a;a=c.shift();)a()}var c=[];return function(b){c.push(b);"complete"===document.readyState&&setTimeout(a,1);if(1==c.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",a);window.attachEvent("onload",a);b=!1;try{b=!window.frameElement}catch(e){}if(document.documentElement.doScroll&&b){var f=function(){try{document.documentElement.doScroll("left")}catch(b){setTimeout(f,1);return}a()};f()}}}}()},e=window.CKEDITOR_GETURL;if(e){var g=b.url;b.url=function(a){return e.call(b,a)||g.call(b,a)}}return b}());
window.CKEDITOR||(window.CKEDITOR=function(){var l=Math.floor(900*Math.random())+100,b=window.CKEDITOR_BASEPATH||"";if(!b)for(var g=document.getElementsByTagName("script"),e=0;e<g.length;e++){var h=g[e].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(h){b=h[1];break}}-1==b.indexOf(":/")&&(b=0===b.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+b:location.href.match(/^[^\?]*\/(?:)/)[0]+b);if(!b)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';var c=function(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",c,!1),j()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",c),j())}catch(a){}},j=function(){for(var a;a=f.shift();)a()},f=[],d={timestamp:"",version:"%VERSION%",revision:"%REV%",rnd:l,_:{pending:[]},status:"unloaded",basePath:b,getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(a){f.push(a);"complete"===document.readyState&&setTimeout(c,1);if(1==f.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",c,!1),window.addEventListener("load",c,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",c);window.attachEvent("onload",c);a=!1;try{a=!window.frameElement}catch(b){}if(document.documentElement.doScroll&&a){var d=function(){try{document.documentElement.doScroll("left")}catch(a){setTimeout(d,1);return}c()};d()}}}},k=window.CKEDITOR_GETURL;if(k){var m=d.getUrl;d.getUrl=function(a){return k.call(d,a)||m.call(d,a)}}return d}());
/*jsl:end*/

if ( CKEDITOR.loader )
Expand Down
6 changes: 3 additions & 3 deletions core/ckeditor_base.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// Must be updated on changes in the script as well as updated in the
// ckeditor_source.js and ckeditor_basic_source.js files.

// window.CKEDITOR||(window.CKEDITOR=function(){var c={timestamp:"",version:"%VERSION%",revision:"%REV%",rnd:Math.floor(900*Math.random())+100,_:{pending:[]},status:"unloaded",basePath:function(){var a=window.CKEDITOR_BASEPATH||"";if(!a)for(var d=document.getElementsByTagName("script"),b=0;b<d.length;b++){var e=d[b].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(e){a=e[1];break}}-1==a.indexOf(":/")&&(a=0===a.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+a:location.href.match(/^[^\?]*\/(?:)/)[0]+ a);if(!a)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';return a}(),getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(){function a(){try{document.addEventListener?document.removeEventListener("DOMContentLoaded",a, !1):document.attachEvent&&document.detachEvent("onreadystatechange",a)}catch(b){}for(var e;e=d.shift();)e()}var d=[];return function(b){d.push(b);"complete"===document.readyState&&setTimeout(a,1);if(1==d.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",a,!1),window.addEventListener("load",a,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",a);window.attachEvent("onload",a);b=!1;try{b=!window.frameElement}catch(e){}if(document.documentElement.doScroll&& b){var c=function(){try{document.documentElement.doScroll("left")}catch(b){setTimeout(c,1);return}a()};c()}}}}()},f=window.CKEDITOR_GETURL;if(f){var g=c.url;c.url=function(a){return f.call(c,a)||g.call(c,a)}}return c}());
// window.CKEDITOR||(window.CKEDITOR=function(){var l=Math.floor(900*Math.random())+100,b=window.CKEDITOR_BASEPATH||"";if(!b)for(var g=document.getElementsByTagName("script"),e=0;e<g.length;e++){var h=g[e].src.match(/(^|.*[\\\/])ckeditor(?:_basic)?(?:_source)?.js(?:\?.*)?$/i);if(h){b=h[1];break}}-1==b.indexOf(":/")&&(b=0===b.indexOf("/")?location.href.match(/^.*?:\/\/[^\/]*/)[0]+b:location.href.match(/^[^\?]*\/(?:)/)[0]+b);if(!b)throw'The CKEditor installation path could not be automatically detected. Please set the global variable "CKEDITOR_BASEPATH" before creating editor instances.';var c=function(){try{document.addEventListener?(document.removeEventListener("DOMContentLoaded",c,!1),j()):document.attachEvent&&"complete"===document.readyState&&(document.detachEvent("onreadystatechange",c),j())}catch(a){}},j=function(){for(var a;a=f.shift();)a()},f=[],d={timestamp:"",version:"%VERSION%",revision:"%REV%",rnd:l,_:{pending:[]},status:"unloaded",basePath:b,getUrl:function(a){-1==a.indexOf(":/")&&0!==a.indexOf("/")&&(a=this.basePath+a);this.timestamp&&("/"!=a.charAt(a.length-1)&&!/[&?]t=/.test(a))&&(a+=(0<=a.indexOf("?")?"&":"?")+"t="+this.timestamp);return a},domReady:function(a){f.push(a);"complete"===document.readyState&&setTimeout(c,1);if(1==f.length)if(document.addEventListener)document.addEventListener("DOMContentLoaded",c,!1),window.addEventListener("load",c,!1);else if(document.attachEvent){document.attachEvent("onreadystatechange",c);window.attachEvent("onload",c);a=!1;try{a=!window.frameElement}catch(b){}if(document.documentElement.doScroll&&a){var d=function(){try{document.documentElement.doScroll("left")}catch(a){setTimeout(d,1);return}c()};d()}}}},k=window.CKEDITOR_GETURL;if(k){var m=d.getUrl;d.getUrl=function(a){return k.call(d,a)||m.call(d,a)}}return d}());

// The Closure Compiler online service should be used when updating this manually:
// http://closure-compiler.appspot.com/
Expand Down Expand Up @@ -283,8 +283,8 @@ if ( !window.CKEDITOR ) {
// implementation pointing to a global named CKEDITOR_GETURL.
var newGetUrl = window.CKEDITOR_GETURL;
if ( newGetUrl ) {
var originalGetUrl = CKEDITOR.url;
CKEDITOR.url = function( resource ) {
var originalGetUrl = CKEDITOR.getUrl;
CKEDITOR.getUrl = function( resource ) {
return newGetUrl.call( CKEDITOR, resource ) || originalGetUrl.call( CKEDITOR, resource );
};
}
Expand Down
9 changes: 6 additions & 3 deletions core/creators/inline.js
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@
// data retrieval possible immediately after the editor creation.
editor.setData( element.getHtml(), null, true );

// Clean during initialization.
editor.resetDirty();

// Once the editor is loaded, start the UI.
editor.on( 'loaded', function() {
editor.fire( 'uiReady' );
Expand All @@ -49,6 +52,9 @@
// Load and process editor data.
editor.setData( editor.getData( 1 ) );

// Clean on startup.
editor.resetDirty();

editor.fire( 'contentDom' );
// Inline editing defaults to "wysiwyg" mode, so plugins don't
// need to make special handling for this "mode-less" environment.
Expand All @@ -59,9 +65,6 @@
editor.fireOnce( 'instanceReady' );
CKEDITOR.fire( 'instanceReady', null, editor );

// Clean on startup.
editor.resetDirty();

// give priority to plugins that relay on editor#loaded for bootstrapping.
}, null, null, 10000 );

Expand Down
11 changes: 6 additions & 5 deletions core/creators/themedui.js
Original file line number Diff line number Diff line change
Expand Up @@ -164,8 +164,6 @@ CKEDITOR.replaceClass = 'ckeditor';
editor.mode = newMode;

if ( isDirty !== undefined ) {
// The editor data "may be dirty" after this point.
editor.mayBeDirty = true;
!isDirty && editor.resetDirty();
}

Expand Down Expand Up @@ -254,6 +252,9 @@ CKEDITOR.replaceClass = 'ckeditor';

data && editor.setData( data, null, true );

// Clean during initialization.
editor.resetDirty();

// Once the editor is loaded, start the UI.
editor.on( 'loaded', function() {
loadTheme( editor );
Expand All @@ -262,12 +263,12 @@ CKEDITOR.replaceClass = 'ckeditor';
attachToForm( editor );

editor.setMode( editor.config.startupMode, function() {
// Clean on startup.
editor.resetDirty();

// Editor is completely loaded for interaction.
editor.fireOnce( 'instanceReady' );
CKEDITOR.fire( 'instanceReady', null, editor );

// Clean on startup.
editor.resetDirty();
});
});

Expand Down
7 changes: 6 additions & 1 deletion core/htmldataprocessor.js
Original file line number Diff line number Diff line change
Expand Up @@ -565,7 +565,12 @@

title: function( element ) {
var titleText = element.children[ 0 ];
titleText && ( titleText.value = element.attributes[ 'data-cke-title' ] || '' );

// Append text-node to title tag if not present (i.e. non-IEs) (#9882).
!titleText && append( element, titleText = new CKEDITOR.htmlParser.text() );

// Transfer data-saved title to title tag.
titleText.value = element.attributes[ 'data-cke-title' ] || '';
}
},

Expand Down
6 changes: 5 additions & 1 deletion core/selection.js
Original file line number Diff line number Diff line change
Expand Up @@ -381,8 +381,12 @@
});
}
// In all other cases listen on simple mouseup over editable, as we did before #9699.
//
// Use document instead of editable in non-IEs for observing mouseup
// since editable won't fire the event if selection process started within iframe and ended out
// of the editor (#9851).
else
editable.attachListener( editable, 'mouseup', checkSelectionChangeTimeout, editor );
editable.attachListener( CKEDITOR.env.ie ? editable : doc.getDocumentElement(), 'mouseup', checkSelectionChangeTimeout, editor );

if ( CKEDITOR.env.webkit ) {
// Before keystroke is handled by editor, check to remove the filling char.
Expand Down
5 changes: 4 additions & 1 deletion plugins/clipboard/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,10 @@
!preventBeforePasteEvent && fixCut( editor );
});

editable.on( 'mouseup', function() {
// Use editor.document instead of editable in non-IEs for observing mouseup
// since editable won't fire the event if selection process started within
// iframe and ended out of the editor (#9851).
( CKEDITOR.env.ie ? editable : editor.document.getDocumentElement() ).on( 'mouseup', function() {
setTimeout( function() {
setToolbarStates();
}, 0 );
Expand Down
4 changes: 2 additions & 2 deletions plugins/dialogui/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -702,9 +702,9 @@ CKEDITOR.plugins.add( 'dialogui', {
// Look for focus function in definition.
var focus = elementDefinition.focus;
if ( focus ) {
var oldFocus = this.focus;
this.focus = function() {
this.selectParentTab();
typeof focus == 'function' && focus.call( this );
( typeof focus == 'function' ? focus : oldFocus ).call( this );
this.fire( 'focus' );
};
if ( elementDefinition.isFocusable ) {
Expand Down
8 changes: 6 additions & 2 deletions plugins/floatingspace/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,14 +218,18 @@
// | +-------------------------------+
// | +------- Editor -+ |
// | | | |
//
//
if ( offset + spaceRect.width > viewRect.width ) {
alignSide = alignSide == 'left' ? 'right' : 'left';
offset = 0;
}
}

floatSpace.setStyle( alignSide, pixelate( ( mode == 'pin' ? pinnedOffsetX : dockedOffsetX ) + offset + ( mode == 'pin' ? 0 : pageScrollX ) ) );
// Pin mode is fixed, so don't include scroll-x.
// (#9903) For mode is "top" or "bottom", add opposite scroll-x for right-aligned space.
var scroll = mode == 'pin' ? 0 : alignSide == 'left' ? pageScrollX : -pageScrollX;

floatSpace.setStyle( alignSide, pixelate( ( mode == 'pin' ? pinnedOffsetX : dockedOffsetX ) + offset + scroll ) );
};

var body = CKEDITOR.document.getBody();
Expand Down
10 changes: 5 additions & 5 deletions plugins/magicline/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@
editable.attachListener( that.inInlineMode ? editable : doc, 'mousemove', function( event ) {
checkMouseTimeoutPending = true;

if ( editor.mode != 'wysiwyg' || checkMouseTimer )
if ( editor.mode != 'wysiwyg' || editor.readOnly || checkMouseTimer )
return;

// IE<9 requires this event-driven object to be created
Expand Down Expand Up @@ -1693,10 +1693,10 @@
* // Changes keystroke to CTRL + ,
* CKEDITOR.config.magicline_keystrokePrevious = CKEDITOR.CTRL + 188;
*
* @cfg {Number} [magicline_keystrokePrevious=CKEDITOR.CTRL + CKEDITOR.ALT + 219 (CTRL + ALT + [)]
* @cfg {Number} [magicline_keystrokePrevious=CKEDITOR.CTRL + CKEDITOR.SHIFT + 219 (CTRL + SHIFT + [)]
* @member CKEDITOR.config
*/
CKEDITOR.config.magicline_keystrokePrevious = CKEDITOR.CTRL + CKEDITOR.ALT + 219; // CTRL + ALT + [
CKEDITOR.config.magicline_keystrokePrevious = CKEDITOR.CTRL + CKEDITOR.SHIFT + 219; // CTRL + SHIFT + [

/**
* Defines default keystroke that access the closest unreachable focus space **after**
Expand All @@ -1705,10 +1705,10 @@ CKEDITOR.config.magicline_keystrokePrevious = CKEDITOR.CTRL + CKEDITOR.ALT + 219
* // Changes keystroke to CTRL + .
* CKEDITOR.config.magicline_keystrokeNext = CKEDITOR.CTRL + 190;
*
* @cfg {Number} [magicline_keystrokeNext=CKEDITOR.CTRL + CKEDITOR.ALT + 221 (CTRL + ALT + ])]
* @cfg {Number} [magicline_keystrokeNext=CKEDITOR.CTRL + CKEDITOR.SHIFT + 221 (CTRL + SHIFT + ])]
* @member CKEDITOR.config
*/
CKEDITOR.config.magicline_keystrokeNext = CKEDITOR.CTRL + CKEDITOR.ALT + 221; // CTRL + ALT + ]
CKEDITOR.config.magicline_keystrokeNext = CKEDITOR.CTRL + CKEDITOR.SHIFT + 221; // CTRL + SHIFT + ]

/**
* Defines box color. The color may be adjusted to enhance readability.
Expand Down
3 changes: 3 additions & 0 deletions plugins/maximize/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,9 @@
}

function refreshCursor( editor ) {
if ( editor.editable().isInline() )
return;

// Refresh all editor instances on the page (#5724).
var all = CKEDITOR.instances;
for ( var i in all ) {
Expand Down
14 changes: 5 additions & 9 deletions plugins/stylescombo/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,14 @@
style._name = styleName;
style._.enterMode = config.enterMode;

// Weight is used to sort styles (#9029).
style._.weight = i + ( style.type == CKEDITOR.STYLE_OBJECT ? 1 : style.type == CKEDITOR.STYLE_BLOCK ? 2 : 3 ) * 1000;

stylesList.push( style );
}

// Sorts the Array, so the styles get grouped by type.
stylesList.sort( sortStyles );
// Sorts the Array, so the styles get grouped by type in proper order (#9029).
stylesList.sort( function( styleA, styleB ) { return styleA._.weight - styleB._.weight; } );
}

callback && callback();
Expand Down Expand Up @@ -176,11 +179,4 @@
});
}
});

function sortStyles( styleA, styleB ) {
var typeA = styleA.type,
typeB = styleB.type;

return typeA == typeB ? 0 : typeA == CKEDITOR.STYLE_OBJECT ? -1 : typeB == CKEDITOR.STYLE_OBJECT ? 1 : typeB == CKEDITOR.STYLE_BLOCK ? 1 : -1;
}
})();
24 changes: 0 additions & 24 deletions plugins/wysiwygarea/plugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -508,30 +508,6 @@
}
});

// Fixing Firefox 'Back-Forward Cache' breaks design mode. (#4514)
if ( CKEDITOR.env.gecko ) {
(function() {
var body = document.body;

if ( !body )
window.addEventListener( 'load', arguments.callee, false );
else {
var currentHandler = body.getAttribute( 'onpageshow' );
body.setAttribute( 'onpageshow', ( currentHandler ? currentHandler + ';' : '' ) + 'event.persisted&&(function(){' +
'var x=CKEDITOR.instances,d,i;' +
'for(i in x){' +
'd=x[i].document;' +
'if(d){' +
'd.$.designMode="off";' +
'd.$.designMode="on";' +
'}' +
'}' +
'})();' );
}
})();

}

// DOM modification here should not bother dirty flag.(#4385)
function restoreDirty( editor ) {
if ( !editor.checkDirty() )
Expand Down
7 changes: 3 additions & 4 deletions skins/kama/dialog.css
Original file line number Diff line number Diff line change
Expand Up @@ -459,9 +459,8 @@ a.cke_dialog_ui_button
display: inline-block;
}

/* The inner part of the button. */
a.cke_dialog_ui_button_ok span,
a.cke_dialog_ui_button_cancel span
/* The inner part of the button (dialog footer buttons only). */
.cke_dialog_footer_buttons a.cke_dialog_ui_button span
{
width: 60px;
padding: 5px 20px 5px;
Expand Down Expand Up @@ -550,7 +549,7 @@ a.cke_dialog_ui_button:active
/*
Styles for other dialog element types.
*/
.cke_dialog_ui_input_select
select.cke_dialog_ui_input_select
{
border: 1px solid #a0a0a0;
background-color: white;
Expand Down
13 changes: 9 additions & 4 deletions skins/moono/dialog.css
Original file line number Diff line number Diff line change
Expand Up @@ -650,14 +650,12 @@ a.cke_dialog_ui_button[style*="width"]
width: auto !important;
}
*/
/* The inner part of the button. */
a.cke_dialog_ui_button_ok span,
a.cke_dialog_ui_button_cancel span
/* The inner part of the button (both in dialog tabs and dialog footer). */
.cke_dialog_footer_buttons a.cke_dialog_ui_button span
{
color: inherit;
font-size: 12px;
font-weight: bold;
text-shadow: 0 1px 0 #fff;
line-height: 20px;
}

Expand Down Expand Up @@ -690,6 +688,13 @@ a.cke_dialog_ui_button_ok:hover
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#88be14', endColorstr='#5d9c0a',GradientType=0 );
}

/* Default text shadow used for inner parts of all dialog buttons (both in dialog tabs and dialog footer). */
a.cke_dialog_ui_button span
{
text-shadow: 0 1px 0 #fff;
}

/* Text shadow used for inner part of OK dialog button in footer. */
a.cke_dialog_ui_button_ok span
{
text-shadow: 0 -1px 0 #55830c;
Expand Down
6 changes: 6 additions & 0 deletions skins/moono/editor_iequirks.css
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,12 @@ in Quirks mode only.
vertical-align: top;
}

/* Otherwise formatting toolbar breaks when editing a mixed content (#9893). */
.cke_rtl .cke_button_icon
{
float: none;
}

.cke_resizer
{
width: 10px;
Expand Down

0 comments on commit 87e128d

Please sign in to comment.