Index: typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js
===================================================================
--- typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js (révision 8944)
+++ typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js (copie de travail)
@@ -968,20 +968,35 @@
} else {
// Test if the styleSheets array is at all accessible
if (Ext.isIE) {
- try { rules = this.document.styleSheets[0].rules; } catch(e) { stylesAreLoaded = false; errorText = e; }
+ try {
+ rules = this.document.styleSheets[0].rules;
+ } catch(e) {
+ stylesAreLoaded = false;
+ errorText = e;
+ }
} else {
- try { this.document.styleSheets[0] && this.document.styleSheets[0].cssRules; } catch(e) { stylesAreLoaded = false; errorText = e; }
+ try {
+ this.document.styleSheets && this.document.styleSheets[0] && this.document.styleSheets[0].rules;
+ } catch(e) {
+ stylesAreLoaded = false;
+ errorText = e;
+ }
}
// Then test if all stylesheets are accessible
if (stylesAreLoaded) {
- Ext.each(this.document.styleSheets, function (styleSheet) {
- if (Ext.isIE) {
- try { rules = styleSheet.rules; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
- try { rules = styleSheet.imports; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
- } else {
- try { rules = styleSheet.cssRules; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
- }
- });
+ if (this.document.styleSheets.length) {
+ Ext.each(this.document.styleSheets, function (styleSheet) {
+ if (Ext.isIE) {
+ try { rules = styleSheet.rules; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
+ try { rules = styleSheet.imports; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
+ } else {
+ try { rules = styleSheet.cssRules; } catch(e) { stylesAreLoaded = false; errorText = e; return false; }
+ }
+ });
+ } else {
+ stylesAreLoaded = false;
+ errorText = 'Empty stylesheets array';
+ }
}
}
if (!stylesAreLoaded) {
@@ -2063,7 +2078,7 @@
id: this.editorId + '-iframe',
tag: 'iframe',
cls: 'editorIframe',
- src: Ext.isGecko ? 'javascript:void(0);' : HTMLArea.editorUrl + 'popups/blank.html'
+ src: (Ext.isGecko || Ext.isChrome) ? 'javascript:void(0);' : HTMLArea.editorUrl + 'popups/blank.html'
},
isNested: this.isNested,
nestedParentElements: this.nestedParentElements,