summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authorThomas Bruederli <thomas@roundcube.net>2013-09-04 10:08:42 +0200
committerThomas Bruederli <thomas@roundcube.net>2013-09-04 10:08:42 +0200
commit0933d66b591056358b5e645cbd563814308998d2 (patch)
treecd4025d234c04e615f357922669b09edd59da20a /program
parent80b3c6200ee7788bef1bca0562aa53113ffea9bd (diff)
Keep current selection on IE browsers by adding unselectable=on to link elements
Diffstat (limited to 'program')
-rw-r--r--program/include/rcmail_output_html.php2
-rw-r--r--program/js/app.js7
-rw-r--r--program/lib/Roundcube/html.php4
-rw-r--r--program/steps/mail/compose.inc1
4 files changed, 8 insertions, 6 deletions
diff --git a/program/include/rcmail_output_html.php b/program/include/rcmail_output_html.php
index a2ec29ca3..006b89c64 100644
--- a/program/include/rcmail_output_html.php
+++ b/program/include/rcmail_output_html.php
@@ -1171,7 +1171,7 @@ class rcmail_output_html extends rcmail_output
// generate html code for button
if ($btn_content) {
- $attrib_str = html::attrib_string($attrib, $link_attrib);
+ $attrib_str = html::attrib_string($attrib, array_merge(html::$common_attrib, $link_attrib));
$out = sprintf('<a%s>%s</a>', $attrib_str, $btn_content);
}
diff --git a/program/js/app.js b/program/js/app.js
index cef688204..5233d9c9a 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -258,12 +258,12 @@ function rcube_webmail()
this.env.address_group_stack = [];
this.env.compose_commands = ['send-attachment', 'remove-attachment', 'send', 'cancel',
'toggle-editor', 'list-adresses', 'pushgroup', 'search', 'reset-search', 'extwin',
- 'insert-response', 'save-response', 'edit-responses'];
+ 'insert-response', 'save-response'];
if (this.env.drafts_mailbox)
this.env.compose_commands.push('savedraft')
- this.enable_command(this.env.compose_commands, 'identities', true);
+ this.enable_command(this.env.compose_commands, 'identities', 'responses', true);
// add more commands (not enabled)
$.merge(this.env.compose_commands, ['add-recipient', 'firstpage', 'previouspage', 'nextpage', 'lastpage']);
@@ -277,6 +277,7 @@ function rcube_webmail()
// init canned response functions
if (this.gui_objects.responseslist) {
$('a.insertresponse', this.gui_objects.responseslist)
+ .attr('unselectable', 'on')
.mousedown(function(e){ return rcube_event.cancel(e); })
.mouseup(function(e){
ref.command('insert-response', $(this).attr('rel'));
@@ -3458,7 +3459,7 @@ function rcube_webmail()
this.edit_responses = function()
{
- // TODO: decide what to do here...
+ // TODO: implement inline editing of responses
};
this.delete_response = function(key)
diff --git a/program/lib/Roundcube/html.php b/program/lib/Roundcube/html.php
index 2086aaa85..4295f26d6 100644
--- a/program/lib/Roundcube/html.php
+++ b/program/lib/Roundcube/html.php
@@ -3,7 +3,7 @@
/*
+-----------------------------------------------------------------------+
| This file is part of the Roundcube Webmail client |
- | Copyright (C) 2005-2011, The Roundcube Dev Team |
+ | Copyright (C) 2005-2013, The Roundcube Dev Team |
| |
| Licensed under the GNU General Public License version 3 or |
| any later version with exceptions for skins & plugins. |
@@ -32,7 +32,7 @@ class html
public static $doctype = 'xhtml';
public static $lc_tags = true;
- public static $common_attrib = array('id','class','style','title','align');
+ public static $common_attrib = array('id','class','style','title','align','unselectable');
public static $containers = array('iframe','div','span','p','h1','h2','h3','ul','form','textarea','table','thead','tbody','tr','th','td','style','script');
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index 282a2fd3e..bce4fd313 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -1713,6 +1713,7 @@ function rcmail_compose_responses_list($attrib)
$item = html::a(array(
'href '=> '#'.urlencode($response['name']),
'class' => rtrim('insertresponse ' . $attrib['itemclass']),
+ 'unselectable' => 'on',
'rel' => $key,
), Q($response['name']));