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.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/program/js/app.js b/program/js/app.js
index fb9c299ec..88e4606a7 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -507,6 +507,11 @@ function rcube_webmail()
if (this.busy)
return false;
+ // let the browser handle this click (shift/ctrl usually opens the link in a new window/tab)
+ if ((obj && obj.href && String(obj.href).indexOf(location.href) < 0) && rcube_event.get_modifier(event)) {
+ return true;
+ }
+
// command not supported or allowed
if (!this.commands[command]) {
// pass command to parent window
@@ -562,7 +567,7 @@ function rcube_webmail()
break;
case 'about':
- location.href = '?_task=settings&_action=about';
+ this.redirect('?_task=settings&_action=about', false);
break;
case 'permaurl':
@@ -3415,6 +3420,10 @@ function rcube_webmail()
message = message.substring(0, p) + sig + message.substring(p, message.length);
cursor_pos = p - 1;
}
+ else if (!message) { // empty message
+ cursor_pos = 0;
+ message = '\n\n' + sig;
+ }
else if (pos = this.get_caret_pos(input_message.get(0))) { // at cursor position
message = message.substring(0, pos) + '\n' + sig + '\n\n' + message.substring(pos, message.length);
cursor_pos = pos;