diff options
author | alecpl <alec@alec.pl> | 2009-07-11 12:46:46 +0000 |
---|---|---|
committer | alecpl <alec@alec.pl> | 2009-07-11 12:46:46 +0000 |
commit | 665cc566662664dcb7ae13ee951b4c268f993724 (patch) | |
tree | 9c71c3e2e459a7f3798d5823df76d9160b72a0e9 /program/js/editor.js | |
parent | a183b76946ef6cd83fd324ced40cc7fb8b9334aa (diff) |
- Fix HTML editor tabIndex setting (#1485972)
Diffstat (limited to 'program/js/editor.js')
-rw-r--r-- | program/js/editor.js | 19 |
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'; } |