{\r
var styleName;\r
if ( ( styleName = this.getValue() ) )\r
- styles[ styleName ].applyToObject( element );\r
+ {\r
+ var style = styles[ styleName ];\r
+ var customData = element.getCustomData( 'elementStyle' ) || '';\r
+\r
+ style.applyToObject( element );\r
+ element.setCustomData( 'elementStyle', customData + style._.definition.attributes.style );\r
+ }\r
}\r
},\r
{\r
commit : function( element )\r
{\r
// Merge with 'elementStyle', which is of higher priority.\r
- var value = this.getValue(),\r
- merged = [ value, element.getAttribute( 'style' ) ].join( ';' );\r
- value && element.setAttribute( 'style', merged );\r
+ var merged = this.getValue() + ( element.getCustomData( 'elementStyle' ) || '' );\r
+ element.setAttribute( 'style', merged );\r
}\r
}\r
]\r
},\r
onHide : function()\r
{\r
+ // Remove style only when editing existing DIV. (#6315)\r
+ if ( command == 'editdiv' )\r
+ this._element.removeCustomData( 'elementStyle' );\r
delete this._element;\r
}\r
};\r