From 2eeb128d06ad37dea9bd1765784fb53e47ef527c Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Tue, 15 Nov 2011 11:47:40 -0500
Subject: [PATCH] - Fix washing styles with quoted values e.g. font-family

---
 program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js |   56 +++++++++++++++++++++++++++-----------------------------
 1 files changed, 27 insertions(+), 29 deletions(-)

diff --git a/program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js b/program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
index 143ed92..f240572 100644
--- a/program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
+++ b/program/js/tiny_mce/plugins/xhtmlxtras/editor_plugin_src.js
@@ -1,8 +1,11 @@
 /**
- * $Id: editor_plugin_src.js 201 2007-02-12 15:56:56Z spocke $
+ * editor_plugin_src.js
  *
- * @author Moxiecode
- * @copyright Copyright � 2004-2008, Moxiecode Systems AB, All rights reserved.
+ * Copyright 2009, Moxiecode Systems AB
+ * Released under LGPL License.
+ *
+ * License: http://tinymce.moxiecode.com/license
+ * Contributing: http://tinymce.moxiecode.com/contributing
  */
 
 (function() {
@@ -24,7 +27,7 @@
 				ed.windowManager.open({
 					file : url + '/acronym.htm',
 					width : 350 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)),
-					height : 250 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_width', 0)),
+					height : 250 + parseInt(ed.getLang('xhtmlxtras.acronym_delta_height', 0)),
 					inline : 1
 				}, {
 					plugin_url : url
@@ -35,7 +38,7 @@
 				ed.windowManager.open({
 					file : url + '/abbr.htm',
 					width : 350 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)),
-					height : 250 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_width', 0)),
+					height : 250 + parseInt(ed.getLang('xhtmlxtras.abbr_delta_height', 0)),
 					inline : 1
 				}, {
 					plugin_url : url
@@ -46,7 +49,7 @@
 				ed.windowManager.open({
 					file : url + '/del.htm',
 					width : 340 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)),
-					height : 310 + parseInt(ed.getLang('xhtmlxtras.del_delta_width', 0)),
+					height : 310 + parseInt(ed.getLang('xhtmlxtras.del_delta_height', 0)),
 					inline : 1
 				}, {
 					plugin_url : url
@@ -57,7 +60,7 @@
 				ed.windowManager.open({
 					file : url + '/ins.htm',
 					width : 340 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)),
-					height : 310 + parseInt(ed.getLang('xhtmlxtras.ins_delta_width', 0)),
+					height : 310 + parseInt(ed.getLang('xhtmlxtras.ins_delta_height', 0)),
 					inline : 1
 				}, {
 					plugin_url : url
@@ -67,8 +70,8 @@
 			ed.addCommand('mceAttributes', function() {
 				ed.windowManager.open({
 					file : url + '/attributes.htm',
-					width : 380,
-					height : 370,
+					width : 380 + parseInt(ed.getLang('xhtmlxtras.attr_delta_width', 0)),
+					height : 370 + parseInt(ed.getLang('xhtmlxtras.attr_delta_height', 0)),
 					inline : 1
 				}, {
 					plugin_url : url
@@ -83,18 +86,6 @@
 			ed.addButton('ins', {title : 'xhtmlxtras.ins_desc', cmd : 'mceIns'});
 			ed.addButton('attribs', {title : 'xhtmlxtras.attribs_desc', cmd : 'mceAttributes'});
 
-			if (tinymce.isIE) {
-				function fix(ed, o) {
-					if (o.set) {
-						o.content = o.content.replace(/<abbr([^>]+)>/gi, '<html:abbr $1>');
-						o.content = o.content.replace(/<\/abbr>/gi, '</html:abbr>');
-					}
-				};
-
-				ed.onBeforeSetContent.add(fix);
-				ed.onPostProcess.add(fix);
-			}
-
 			ed.onNodeChange.add(function(ed, cm, n, co) {
 				n = ed.dom.getParent(n, 'CITE,ACRONYM,ABBR,DEL,INS');
 
@@ -104,18 +95,25 @@
 				cm.setDisabled('del', co);
 				cm.setDisabled('ins', co);
 				cm.setDisabled('attribs', n && n.nodeName == 'BODY');
+				cm.setActive('cite', 0);
+				cm.setActive('acronym', 0);
+				cm.setActive('abbr', 0);
+				cm.setActive('del', 0);
+				cm.setActive('ins', 0);
 
+				// Activate all
 				if (n) {
-					cm.setDisabled(n.nodeName.toLowerCase(), 0);
-					cm.setActive(n.nodeName.toLowerCase(), 1);
-				} else {
-					cm.setActive('cite', 0);
-					cm.setActive('acronym', 0);
-					cm.setActive('abbr', 0);
-					cm.setActive('del', 0);
-					cm.setActive('ins', 0);
+					do {
+						cm.setDisabled(n.nodeName.toLowerCase(), 0);
+						cm.setActive(n.nodeName.toLowerCase(), 1);
+					} while (n = n.parentNode);
 				}
 			});
+
+			ed.onPreInit.add(function() {
+				// Fixed IE issue where it can't handle these elements correctly
+				ed.dom.create('abbr');
+			});
 		},
 
 		getInfo : function() {

--
Gitblit v1.9.1