- Fix listupdate event doesn't trigger on search response (#1486708)

release-0.6
alecpl 15 years ago
parent c6a6d25214
commit c833ed4053

@ -1,6 +1,7 @@
CHANGELOG RoundCube Webmail CHANGELOG RoundCube Webmail
=========================== ===========================
- Fix listupdate event doesn't trigger on search response (#1486708)
- Fix select_all_mode value after selecting a message (#1486720) - Fix select_all_mode value after selecting a message (#1486720)
- Set focus to editor on reply in HTML mode (#1486632) - Set focus to editor on reply in HTML mode (#1486632)
- Fix composing in HTML jumps cursor to body instead of recipients (#1486674) - Fix composing in HTML jumps cursor to body instead of recipients (#1486674)

@ -4237,13 +4237,13 @@ function rcube_webmail()
// set image according to button state // set image according to button state
if (obj && button.type=='image' && button[state]) { if (obj && button.type=='image' && button[state]) {
button.status = state; button.status = state;
obj.src = button[state]; obj.src = button[state];
} }
// set class name according to button state // set class name according to button state
else if (obj && typeof(button[state])!='undefined') { else if (obj && typeof(button[state])!='undefined') {
button.status = state; button.status = state;
obj.className = button[state]; obj.className = button[state];
} }
// disable/enable input buttons // disable/enable input buttons
if (obj && button.type=='input') { if (obj && button.type=='input') {
@ -4833,21 +4833,20 @@ function rcube_webmail()
case 'search': case 'search':
case 'list': case 'list':
if (this.task == 'mail') { if (this.task == 'mail') {
if (this.message_list && (response.action == 'list' || response.action == 'search')) {
this.msglist_select(this.message_list);
this.expand_threads();
}
this.enable_command('show', 'expunge', 'select-all', 'select-none', 'sort', (this.env.messagecount > 0)); this.enable_command('show', 'expunge', 'select-all', 'select-none', 'sort', (this.env.messagecount > 0));
this.enable_command('purge', this.purge_mailbox_test()); this.enable_command('purge', this.purge_mailbox_test());
this.enable_command('expand-all', 'expand-unread', 'collapse-all', this.env.threading && this.env.messagecount); this.enable_command('expand-all', 'expand-unread', 'collapse-all', this.env.threading && this.env.messagecount);
if (response.action == 'list') if (response.action == 'list' || response.action == 'search') {
this.msglist_select(this.message_list);
this.expand_threads();
this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount }); this.triggerEvent('listupdate', { folder:this.env.mailbox, rowcount:this.message_list.rowcount });
}
} }
else if (this.task == 'addressbook') { else if (this.task == 'addressbook') {
this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0)); this.enable_command('export', (this.contact_list && this.contact_list.rowcount > 0));
if (response.action == 'list') { if (response.action == 'list' || response.action == 'search') {
this.enable_command('group-create', this.env.address_sources[this.env.source].groups); this.enable_command('group-create', this.env.address_sources[this.env.source].groups);
this.enable_command('group-rename', 'group-delete', this.env.address_sources[this.env.source].groups && this.env.group); this.enable_command('group-rename', 'group-delete', this.env.address_sources[this.env.source].groups && this.env.group);
this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount }); this.triggerEvent('listupdate', { folder:this.env.source, rowcount:this.contact_list.rowcount });

@ -42,7 +42,7 @@ if (($uids = get_input_value('_uid', RCUBE_INPUT_POST)) && ($flag = get_input_va
} }
$marked = $IMAP->set_flag($uids, $flag); $marked = $IMAP->set_flag($uids, $flag);
if ($marked == -1) { if ($marked == -1) {
// send error message // send error message
if ($_POST['_from'] != 'show') if ($_POST['_from'] != 'show')
@ -55,7 +55,7 @@ if (($uids = get_input_value('_uid', RCUBE_INPUT_POST)) && ($flag = get_input_va
if ($flag == 'DELETED' && $CONFIG['read_when_deleted'] && !empty($_POST['_ruid'])) { if ($flag == 'DELETED' && $CONFIG['read_when_deleted'] && !empty($_POST['_ruid'])) {
$ruids = get_input_value('_ruid', RCUBE_INPUT_POST); $ruids = get_input_value('_ruid', RCUBE_INPUT_POST);
$read = $IMAP->set_flag($ruids, 'SEEN'); $read = $IMAP->set_flag($ruids, 'SEEN');
if ($read != -1 && !$CONFIG['skip_deleted']) if ($read != -1 && !$CONFIG['skip_deleted'])
$OUTPUT->command('flag_deleted_as_read', $ruids); $OUTPUT->command('flag_deleted_as_read', $ruids);
} }
@ -110,17 +110,17 @@ if (($uids = get_input_value('_uid', RCUBE_INPUT_POST)) && ($flag = get_input_va
if ($count && $uids != '*' && ($jump_back || $nextpage_count > 0)) { if ($count && $uids != '*' && ($jump_back || $nextpage_count > 0)) {
$sort_col = isset($_SESSION['sort_col']) ? $_SESSION['sort_col'] : $CONFIG['message_sort_col']; $sort_col = isset($_SESSION['sort_col']) ? $_SESSION['sort_col'] : $CONFIG['message_sort_col'];
$sort_order = isset($_SESSION['sort_order']) ? $_SESSION['sort_order'] : $CONFIG['message_sort_order']; $sort_order = isset($_SESSION['sort_order']) ? $_SESSION['sort_order'] : $CONFIG['message_sort_order'];
$a_headers = $IMAP->list_headers($mbox, NULL, $sort_col, $sort_order, $a_headers = $IMAP->list_headers($mbox, NULL, $sort_col, $sort_order,
$jump_back ? NULL : $count); $jump_back ? NULL : $count);
rcmail_js_message_list($a_headers, false, false); rcmail_js_message_list($a_headers, false, false);
} }
} }
} }
$OUTPUT->send(); $OUTPUT->send();
} }
exit; exit;
?> ?>

Loading…
Cancel
Save