From 5cff852b07b83ddf330fcaffd0843eb3cad6d5ee Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Sat, 31 Jul 2010 05:48:46 -0400 Subject: [PATCH] Disable active spell check in tinyMCE before switching to plaintext mode (#1486870) + focus message field after mode switch --- program/js/editor.js | 21 +++++++++------------ 1 files changed, 9 insertions(+), 12 deletions(-) diff --git a/program/js/editor.js b/program/js/editor.js index fd128cb..c81ef25 100644 --- a/program/js/editor.js +++ b/program/js/editor.js @@ -67,19 +67,12 @@ var editor, elem = rcube_find_object('_from'); if (elem && elem.type=='select-one') rcmail.change_identity(elem); - // set tabIndex - rcmail_editor_tabindex(); - // set focus to element that was focused before - if (elem = rcmail.env.compose_focus_elem) { - if (elem.id == rcmail.env.composebody && (editor = tinyMCE.get(rcmail.env.composebody))) - editor.getWin().focus(); - else - elem.focus(); - } + // set tabIndex and set focus to element that was focused before + rcmail_editor_tabindex(rcmail.env.compose_focus_elem && rcmail.env.compose_focus_elem.id == rcmail.env.composebody); } // set tabIndex on tinyMCE editor -function rcmail_editor_tabindex() +function rcmail_editor_tabindex(focus) { if (rcmail.env.task == 'mail') { var editor = tinyMCE.get(rcmail.env.composebody); @@ -88,6 +81,8 @@ var node = editor.getContentAreaContainer().childNodes[0]; if (textarea && node) node.tabIndex = textarea.tabIndex; + if (focus) + editor.getWin().focus(); } } } @@ -106,14 +101,16 @@ if (ishtml) { // #1486593 - setTimeout("rcmail_editor_tabindex();", 500); + setTimeout("rcmail_editor_tabindex(true);", 500); if (flagElement && (flag = rcube_find_object(flagElement))) flag.value = '1'; } else { if (!res && select.tagName == 'SELECT') - select.value = 'html'; + select.value = 'html'; if (flagElement && (flag = rcube_find_object(flagElement))) flag.value = '0'; + + rcube_find_object(rcmail.env.composebody).focus(); } } -- Gitblit v1.9.1