summaryrefslogtreecommitdiff
path: root/program/js
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2009-07-11 12:46:46 +0000
committeralecpl <alec@alec.pl>2009-07-11 12:46:46 +0000
commit665cc566662664dcb7ae13ee951b4c268f993724 (patch)
tree9c71c3e2e459a7f3798d5823df76d9160b72a0e9 /program/js
parenta183b76946ef6cd83fd324ced40cc7fb8b9334aa (diff)
- Fix HTML editor tabIndex setting (#1485972)
Diffstat (limited to 'program/js')
-rw-r--r--program/js/editor.js19
1 files changed, 17 insertions, 2 deletions
diff --git a/program/js/editor.js b/program/js/editor.js
index 6826af847..ed7c4f9e8 100644
--- a/program/js/editor.js
+++ b/program/js/editor.js
@@ -17,7 +17,8 @@
function rcmail_editor_init(skin_path, editor_lang, spellcheck, mode)
{
if (mode == 'identity')
- tinyMCE.init({ mode : 'textareas',
+ tinyMCE.init({
+ mode : 'textareas',
editor_selector : 'mce_editor',
apply_source_formatting : true,
theme : 'advanced',
@@ -62,8 +63,21 @@ function rcmail_editor_init(skin_path, editor_lang, spellcheck, mode)
function rcmail_editor_callback(editor)
{
var input_from = rcube_find_object('_from');
- if(input_from && input_from.type=='select-one')
+ if (input_from && input_from.type=='select-one')
rcmail.change_identity(input_from);
+ // set tabIndex
+ rcmail_editor_tabindex()
+}
+
+// set tabIndex on tinyMCE editor
+function rcmail_editor_tabindex()
+{
+ if (rcmail.env.task == 'mail') {
+ var textarea = tinyMCE.get('compose-body').getElement();
+ var editor = tinyMCE.get('compose-body').getContentAreaContainer().childNodes[0];
+ if (textarea && editor)
+ editor.tabIndex = textarea.tabIndex;
+ }
}
// switch html/plain mode
@@ -78,6 +92,7 @@ function rcmail_toggle_editor(ishtml, textAreaId, flagElement)
rcmail.plain2html(composeElement.value, textAreaId);
tinyMCE.execCommand('mceAddControl', true, textAreaId);
+ rcmail_editor_tabindex();
if (flagElement && (flag = rcube_find_object(flagElement)))
flag.value = '1';
}