summaryrefslogtreecommitdiff
path: root/program/js/app.js
diff options
context:
space:
mode:
Diffstat (limited to 'program/js/app.js')
-rw-r--r--program/js/app.js73
1 files changed, 41 insertions, 32 deletions
diff --git a/program/js/app.js b/program/js/app.js
index 28146392f..0db174625 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -269,7 +269,7 @@ function rcube_webmail()
// show printing dialog
else if (this.env.action == 'print' && this.env.uid)
if (bw.safari)
- window.setTimeout('window.print()', 10);
+ setTimeout('window.print()', 10);
else
window.print();
@@ -746,7 +746,7 @@ function rcube_webmail()
case 'always-load':
if (this.env.uid && this.env.sender) {
this.add_contact(urlencode(this.env.sender));
- window.setTimeout(function(){ ref.command('load-images'); }, 300);
+ setTimeout(function(){ ref.command('load-images'); }, 300);
break;
}
@@ -764,7 +764,7 @@ function rcube_webmail()
qstring += '&_safe=1';
this.attachment_win = window.open(this.env.comm_path+'&_action=get&'+qstring+'&_frame=1', 'rcubemailattachment');
if (this.attachment_win) {
- window.setTimeout(function(){ ref.attachment_win.focus(); }, 10);
+ setTimeout(function(){ ref.attachment_win.focus(); }, 10);
break;
}
}
@@ -879,19 +879,25 @@ function rcube_webmail()
break;
case 'savedraft':
+ var form = this.gui_objects.messageform, msgid;
+
// Reset the auto-save timer
- self.clearTimeout(this.save_timer);
+ clearTimeout(this.save_timer);
- if (!this.gui_objects.messageform)
+ // saving Drafts is disabled
+ if (!form)
break;
- // if saving Drafts is disabled in main.inc.php
- // or if compose form did not change
- if (!this.env.drafts_mailbox || this.cmp_hash == this.compose_field_hash())
+ // compose form did not change
+ if (this.cmp_hash == this.compose_field_hash()) {
+ this.auto_save_start();
break;
+ }
- var form = this.gui_objects.messageform,
- msgid = this.set_busy(true, 'savingmessage');
+ // re-set keep-alive timeout
+ this.start_keepalive();
+
+ msgid = this.set_busy(true, 'savingmessage');
form.target = "savetarget";
form._draft.value = '1';
@@ -907,7 +913,7 @@ function rcube_webmail()
break;
// Reset the auto-save timer
- self.clearTimeout(this.save_timer);
+ clearTimeout(this.save_timer);
// all checks passed, send message
var lang = this.spellcheck_lang(),
@@ -926,7 +932,7 @@ function rcube_webmail()
case 'send-attachment':
// Reset the auto-save timer
- self.clearTimeout(this.save_timer);
+ clearTimeout(this.save_timer);
this.upload_file(props)
break;
@@ -964,7 +970,7 @@ function rcube_webmail()
if (uid = this.get_single_uid()) {
ref.printwin = window.open(this.env.comm_path+'&_action=print&_uid='+uid+'&_mbox='+urlencode(this.env.mailbox)+(this.env.safemode ? '&_safe=1' : ''));
if (this.printwin) {
- window.setTimeout(function(){ ref.printwin.focus(); }, 20);
+ setTimeout(function(){ ref.printwin.focus(); }, 20);
if (this.env.action != 'show')
this.mark_message('read', uid);
}
@@ -975,7 +981,7 @@ function rcube_webmail()
if (uid = this.get_single_uid()) {
ref.sourcewin = window.open(this.env.comm_path+'&_action=viewsource&_uid='+uid+'&_mbox='+urlencode(this.env.mailbox));
if (this.sourcewin)
- window.setTimeout(function(){ ref.sourcewin.focus(); }, 20);
+ setTimeout(function(){ ref.sourcewin.focus(); }, 20);
}
break;
@@ -1120,7 +1126,7 @@ function rcube_webmail()
// set timer for requests
if (a && this.env.request_timeout)
- this.request_timer = window.setTimeout(function(){ ref.request_timed_out(); }, this.env.request_timeout * 1000);
+ this.request_timer = setTimeout(function(){ ref.request_timed_out(); }, this.env.request_timeout * 1000);
return id;
};
@@ -1172,7 +1178,7 @@ function rcube_webmail()
if (this.is_framed())
parent.rcmail.reload(delay);
else if (delay)
- window.setTimeout(function(){ rcmail.reload(); }, delay);
+ setTimeout(function(){ rcmail.reload(); }, delay);
else if (window.location)
location.href = this.env.comm_path + (this.env.action ? '&_action='+this.env.action : '');
};
@@ -1305,7 +1311,7 @@ function rcube_webmail()
this.env.last_folder_target = null;
if (this.folder_auto_timer) {
- window.clearTimeout(this.folder_auto_timer);
+ clearTimeout(this.folder_auto_timer);
this.folder_auto_timer = null;
this.folder_auto_expand = null;
}
@@ -1358,15 +1364,15 @@ function rcube_webmail()
// if the folder is collapsed, expand it after 1sec and restart the drag & drop process.
if (div.hasClass('collapsed')) {
if (this.folder_auto_timer)
- window.clearTimeout(this.folder_auto_timer);
+ clearTimeout(this.folder_auto_timer);
this.folder_auto_expand = this.env.mailboxes[k].id;
- this.folder_auto_timer = window.setTimeout(function() {
+ this.folder_auto_timer = setTimeout(function() {
rcmail.command('collapse-folder', rcmail.folder_auto_expand);
rcmail.drag_start(null);
}, 1000);
} else if (this.folder_auto_timer) {
- window.clearTimeout(this.folder_auto_timer);
+ clearTimeout(this.folder_auto_timer);
this.folder_auto_timer = null;
this.folder_auto_expand = null;
}
@@ -1518,7 +1524,7 @@ function rcube_webmail()
// start timer for message preview (wait for double click)
if (selected && this.env.contentframe && !list.multi_selecting && !this.dummy_select)
- this.preview_timer = window.setTimeout(function(){ ref.msglist_get_preview(); }, 200);
+ this.preview_timer = setTimeout(function(){ ref.msglist_get_preview(); }, 200);
else if (this.env.contentframe)
this.show_contentframe(false);
};
@@ -1535,7 +1541,7 @@ function rcube_webmail()
clearTimeout(this.preview_timer);
if (this.preview_read_timer)
clearTimeout(this.preview_read_timer);
- this.preview_timer = window.setTimeout(function(){ ref.msglist_get_preview(); }, 200);
+ this.preview_timer = setTimeout(function(){ ref.msglist_get_preview(); }, 200);
}
}
};
@@ -1804,8 +1810,11 @@ function rcube_webmail()
else if (c == 'threads')
html = expando;
else if (c == 'subject') {
- if (bw.ie)
+ if (bw.ie) {
col.onmouseover = function() { rcube_webmail.long_subject_title_ie(this, message.depth+1); };
+ if (bw.ie8)
+ tree = '<span></span>' + tree; // #1487821
+ }
html = tree + cols[c];
}
else if (c == 'priority') {
@@ -1916,7 +1925,7 @@ function rcube_webmail()
// mark as read and change mbox unread counter
if (action == 'preview' && this.message_list && this.message_list.rows[id] && this.message_list.rows[id].unread && this.env.preview_pane_mark_read >= 0) {
- this.preview_read_timer = window.setTimeout(function() {
+ this.preview_read_timer = setTimeout(function() {
ref.set_message(id, 'unread', false);
ref.update_thread_root(id, 'read');
if (ref.env.unread_counts[ref.env.mailbox]) {
@@ -3131,7 +3140,7 @@ function rcube_webmail()
this.auto_save_start = function()
{
if (this.env.draft_autosave)
- this.save_timer = self.setTimeout(function(){ ref.command("savedraft"); }, this.env.draft_autosave * 1000);
+ this.save_timer = setTimeout(function(){ ref.command("savedraft"); }, this.env.draft_autosave * 1000);
// Unlock interface now that saving is complete
this.busy = false;
@@ -3415,7 +3424,7 @@ function rcube_webmail()
this.upload_progress_start = function(action, name)
{
- window.setTimeout(function() { rcmail.http_request(action, {_progress: name}); },
+ setTimeout(function() { rcmail.http_request(action, {_progress: name}); },
this.env.upload_progress_time * 1000);
};
@@ -3515,7 +3524,7 @@ function rcube_webmail()
{
this.display_message(msg, type);
// before redirect we need to wait some time for Chrome (#1486177)
- window.setTimeout(function(){ ref.list_mailbox(); }, 500);
+ setTimeout(function(){ ref.list_mailbox(); }, 500);
};
@@ -3573,11 +3582,11 @@ function rcube_webmail()
case 37: // left
case 39: // right
if (mod != SHIFT_KEY)
- return;
+ return;
}
// start timer
- this.ksearch_timer = window.setTimeout(function(){ ref.ksearch_get_results(props); }, 200);
+ this.ksearch_timer = setTimeout(function(){ ref.ksearch_get_results(props); }, 200);
this.ksearch_input = obj;
return true;
@@ -3885,7 +3894,7 @@ function rcube_webmail()
source = this.env.source ? this.env.address_sources[this.env.source] : null;
if (id = list.get_single_selection())
- this.preview_timer = window.setTimeout(function(){ ref.load_contact(id, 'show'); }, 200);
+ this.preview_timer = setTimeout(function(){ ref.load_contact(id, 'show'); }, 200);
else if (this.env.contentframe)
this.show_contentframe(false);
@@ -5374,7 +5383,7 @@ function rcube_webmail()
}
// add element and set timeout
this.messages[key].elements.push(id);
- window.setTimeout(function() { ref.hide_message(id, type == 'loading'); }, timeout);
+ setTimeout(function() { ref.hide_message(id, type == 'loading'); }, timeout);
return id;
}
@@ -5392,7 +5401,7 @@ function rcube_webmail()
}
if (timeout > 0)
- window.setTimeout(function() { ref.hide_message(id, type == 'loading'); }, timeout);
+ setTimeout(function() { ref.hide_message(id, type == 'loading'); }, timeout);
return id;
};