From 39e1514620fdbc623e6cc2b9e90ae8be8021095c Mon Sep 17 00:00:00 2001 From: Ross Boucher Date: Thu, 11 Mar 2010 14:17:37 -0800 Subject: [PATCH] temporary fix for whiteSpace style issue in IE. --- AppKit/Platform/DOM/CPPlatformString.j | 29 ++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/AppKit/Platform/DOM/CPPlatformString.j b/AppKit/Platform/DOM/CPPlatformString.j index 7b82f4493..96c1dccb2 100644 --- a/AppKit/Platform/DOM/CPPlatformString.j +++ b/AppKit/Platform/DOM/CPPlatformString.j @@ -67,11 +67,15 @@ var DOMSpanElement = nil, DOMSpanElement = DOMIFrameDocument.createElement("span"); DOMSpanElement.style.position = "absolute"; - DOMSpanElement.style.whiteSpace = "pre"; DOMSpanElement.style.visibility = "visible"; DOMSpanElement.style.padding = "0px"; DOMSpanElement.style.margin = "0px"; + try { + DOMSpanElement.style.whiteSpace = "pre"; + } + catch (e) {} + DOMDivElement.appendChild(DOMSpanElement); } @@ -93,16 +97,29 @@ var DOMSpanElement = nil, if (!aWidth) { style.width = ""; - style.whiteSpace = "pre"; + + try { + style.whiteSpace = "pre"; + } + catch (e) {} + + style.wordWrap = "normal"; } else { style.width = ROUND(aWidth) + "px"; + try + { + style.whiteSpace = "-o-pre-wrap"; + style.whiteSpace = "-pre-wrap"; + style.whiteSpace = "-moz-pre-wrap"; + style.whiteSpace = "pre-wrap"; + } catch(e) + { + //some versions of IE throw exceptions for unsupported properties. + } + style.wordWrap = "break-word"; - style.whiteSpace = "-o-pre-wrap"; - style.whiteSpace = "-pre-wrap"; - style.whiteSpace = "-moz-pre-wrap"; - style.whiteSpace = "pre-wrap"; } style.font = [aFont cssString];