Fixed bug #11946: htmlArea RTE: table properties editing dialogue windows loose focus...
authorStanislas Rolland <typo3@sjbr.ca>
Mon, 14 Sep 2009 06:11:37 +0000 (06:11 +0000)
committerStanislas Rolland <typo3@sjbr.ca>
Mon, 14 Sep 2009 06:11:37 +0000 (06:11 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/branches/TYPO3_4-2@5927 709f56b5-9817-0410-a4d7-c38de5d9e867

ChangeLog
typo3/sysext/rtehtmlarea/ChangeLog
typo3/sysext/rtehtmlarea/htmlarea/plugins/ContextMenu/context-menu.js

index bb67b92..b1c72bb 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,7 @@
 2009-09-13  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed bug #11847: htmlArea RTE displays empty editing area in Opera 10
+       * Fixed bug #11946: htmlArea RTE: table properties editing dialogue windows loose focus after opening in IE8
 
 2009-09-01  Oliver Hader  <oliver@typo3.org>
 
index df7c8af..5fc1667 100644 (file)
@@ -1,6 +1,7 @@
 2009-09-13  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed bug #11847: htmlArea RTE displays empty editing area in Opera 10
+       * Fixed bug #11946: htmlArea RTE: table properties editing dialogue windows loose focus after opening in IE8
 
 2009-04-25  Stanislas Rolland  <typo3@sjbr.ca>
 
index 817727c..927cb0b 100644 (file)
@@ -2,7 +2,7 @@
 *  Copyright notice
 *
 *  Copyright (c) 2003 dynarch.com. Authored by Mihai Bazon. Sponsored by www.americanbible.org.
-*  Copyright (c) 2004-2008 Stanislas Rolland <typo3(arobas)sjbr.ca>
+*  Copyright (c) 2004-2009 Stanislas Rolland <typo3(arobas)sjbr.ca>
 *  All rights reserved
 *
 *  This script is part of the TYPO3 project. The TYPO3 project is
@@ -126,7 +126,8 @@ ContextMenu = HTMLArea.Plugin.extend({
                                        tooltip:        option[2] || null,
                                        icon:           option[3] || null,
                                        activate:       ContextMenu.activateHandler(item, this),
-                                       cmd:            option[4] || null
+                                       cmd:            option[4] || null,
+                                       dialog:         option[5] || null
                                };
                                label = label.replace(/_([a-zA-Z0-9])/, "<u>$1</u>");
                                if (label != option[0]) this.keys.push([ RegExp.$1, item ]);
@@ -213,10 +214,14 @@ ContextMenu = HTMLArea.Plugin.extend({
                        if (opEnabled[opcode]) {
                                switch (pluginId) {
                                        case "TableOperations" :
-                                               elmenus.push([this.localize(opcode + "-title"),
-                                                       ContextMenu.tableOperationsHandler(editor, pluginInstance, opcode),
-                                                       this.localize(opcode + "-tooltip"),
-                                                       btnList[opcode][1], opcode]);
+                                               elmenus.push([
+                                                       this.localize(opcode + "-title"),
+                                                       ContextMenu.tableOperationsHandler(editor, pluginInstance, opcode),
+                                                       this.localize(opcode + "-tooltip"),
+                                                       btnList[opcode][1],
+                                                       opcode,
+                                                       btnList[opcode][7]
+                                                       ]);
                                                break;
                                        case "BlockElements" :
                                                elmenus.push([this.localize(opcode + "-title"),
@@ -541,9 +546,15 @@ ContextMenu.mouseDownHandler = function(item) {
 ContextMenu.mouseUpHandler = function(item,instance) {
        return (function(ev) {
                var timeStamp = (new Date()).getTime();
-               if (timeStamp - instance.timeStamp > 500) item.__msh.activate();
-               if (!HTMLArea.is_ie) HTMLArea._stopEvent(ev);
-               instance.editor.updateToolbar();
+               if (timeStamp - instance.timeStamp > 500) {
+                       item.__msh.activate();
+               }
+               if (!HTMLArea.is_ie) {
+                       HTMLArea._stopEvent(ev);
+               }
+               if (!item.__msh.dialog) {
+                       instance.editor.updateToolbar();
+               }
                return false;
        });
 };