summaryrefslogtreecommitdiff
path: root/skins
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2010-03-19 11:20:12 +0000
committeralecpl <alec@alec.pl>2010-03-19 11:20:12 +0000
commit9b3fdc25c171d2b2461af42224ea16ad6c032c49 (patch)
treed7414b8cf6c373439b66edcdb9a0b54837bdd429 /skins
parentf093291bfdac81dd6f68fb7cebc9a871c9f9bf04 (diff)
- Implemented messages copying using drag&drop + SHIFT (#1484086)
Diffstat (limited to 'skins')
-rw-r--r--skins/default/common.css38
-rw-r--r--skins/default/functions.js6
-rw-r--r--skins/default/templates/mail.html7
3 files changed, 51 insertions, 0 deletions
diff --git a/skins/default/common.css b/skins/default/common.css
index 5977087f3..c01012859 100644
--- a/skins/default/common.css
+++ b/skins/default/common.css
@@ -349,6 +349,44 @@ img
-webkit-box-shadow: #999 1px 1px 12px;
}
+.popupmenu ul
+{
+ margin: -4px 0;
+ padding: 0;
+ list-style: none;
+}
+
+.popupmenu ul li
+{
+ font-size: 11px;
+ white-space: nowrap;
+ min-width: 100px;
+ margin: 3px -4px;
+}
+
+.popupmenu li a
+{
+ display: block;
+ color: #a0a0a0;
+ padding: 2px 10px;
+ text-decoration: none;
+ min-height: 14px;
+}
+
+.popupmenu li a.active,
+.popupmenu li a.active:active,
+.popupmenu li a.active:visited
+{
+ color: #333;
+}
+
+.popupmenu li a.active:hover
+{
+ color: #fff;
+ background-color: #c00;
+}
+
+
/***** common table settings ******/
diff --git a/skins/default/functions.js b/skins/default/functions.js
index 4ee2a9d3e..6d0641d51 100644
--- a/skins/default/functions.js
+++ b/skins/default/functions.js
@@ -125,6 +125,7 @@ function rcube_mail_ui()
this.searchmenu = $('#searchmenu');
this.messagemenu = $('#messagemenu');
this.listmenu = $('#listmenu');
+ this.dragmessagemenu = $('#dragmessagemenu');
}
rcube_mail_ui.prototype = {
@@ -259,6 +260,8 @@ body_mouseup: function(evt, p)
this.show_markmenu(false);
else if (this.messagemenu && this.messagemenu.is(':visible') && target != rcube_find_object('messagemenulink'))
this.show_messagemenu(false);
+ else if (this.dragmessagemenu && this.dragmessagemenu.is(':visible') && !rcube_mouse_is_over(evt, rcube_find_object('dragmessagemenu')))
+ this.dragmessagemenu.hide();
else if (this.listmenu && this.listmenu.is(':visible') && target != rcube_find_object('listmenulink')) {
var menu = rcube_find_object('listmenu');
while (target.parentNode) {
@@ -290,6 +293,8 @@ body_keypress: function(evt, p)
this.show_messagemenu(false);
if (this.listmenu && this.listmenu.is(':visible'))
this.show_listmenu(false);
+ if (this.dragmessagemenu && this.dragmessagemenu.is(':visible'))
+ this.dragmessagemenu.hide();
}
}
@@ -304,4 +309,5 @@ function rcube_init_mail_ui()
rcube_event.add_listener({ object:rcmail_ui, method:'body_keypress', event:'keypress' });
rcmail.addEventListener('menu-open', 'open_listmenu', rcmail_ui);
rcmail.addEventListener('menu-save', 'save_listmenu', rcmail_ui);
+ rcmail.gui_object('message_dragmenu', 'dragmessagemenu');
}
diff --git a/skins/default/templates/mail.html b/skins/default/templates/mail.html
index c66bc5802..206f10155 100644
--- a/skins/default/templates/mail.html
+++ b/skins/default/templates/mail.html
@@ -152,6 +152,13 @@
<roundcube:button command="reset-search" id="searchreset" image="/images/icons/reset.gif" title="resetsearch" />
</div>
+<div id="dragmessagemenu" class="popupmenu">
+ <ul>
+ <li><roundcube:button command="moveto" onclick="return rcmail.drag_menu_action('moveto')" label="move" classAct="active" /></li>
+ <li><roundcube:button command="copy" onclick="return rcmail.drag_menu_action('copy')" label="copy" classAct="active" /></li>
+ </ul>
+</div>
+
<div id="listmenu" class="popupmenu">
<fieldset class="thinbordered"><legend><roundcube:label name="listmode" /></legend>
<ul class="toolbarmenu">