diff options
author | Aleksander Machniak <alec@alec.pl> | 2013-12-15 10:01:38 +0100 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2013-12-15 10:01:38 +0100 |
commit | 9a0153324eeb1f0e808cb1a063d1f37d49ad48e2 (patch) | |
tree | e8370c629b5b32c689da8362f5be78097572a0a3 /skins | |
parent | 4187b3e26ff00b607d05cb9b588e83db18c3cab7 (diff) |
Implemented menu actions to copy/move messages, added folder-selector widget (#1484086)
Diffstat (limited to 'skins')
-rw-r--r-- | skins/classic/common.css | 51 | ||||
-rw-r--r-- | skins/classic/functions.js | 1 | ||||
-rw-r--r-- | skins/classic/includes/messagetoolbar.html | 5 | ||||
-rw-r--r-- | skins/classic/mail.css | 17 | ||||
-rw-r--r-- | skins/classic/templates/message.html | 4 | ||||
-rw-r--r-- | skins/larry/images/listicons.png | bin | 26546 -> 37369 bytes | |||
-rw-r--r-- | skins/larry/includes/mailtoolbar.html | 2 | ||||
-rw-r--r-- | skins/larry/mail.css | 6 | ||||
-rw-r--r-- | skins/larry/styles.css | 32 | ||||
-rw-r--r-- | skins/larry/templates/message.html | 4 | ||||
-rw-r--r-- | skins/larry/ui.js | 5 |
11 files changed, 96 insertions, 31 deletions
diff --git a/skins/classic/common.css b/skins/classic/common.css index 186be2485..10bc91c09 100644 --- a/skins/classic/common.css +++ b/skins/classic/common.css @@ -965,6 +965,57 @@ ul.toolbarmenu li.separator_above } +/*** folder selector ***/ + +#folder-selector li a +{ + padding: 0; +} + +#folder-selector li a span +{ + background: url(images/icons/folders.png) no-repeat 6px 0; + display: block; + height: 15px; + min-height: 14px; + padding: 2px 4px 2px 28px; + overflow: hidden; + max-width: 120px; + text-overflow: ellipsis; +} + +#folder-selector li a.virtual +{ + color: #A0A0A0; +} + +#folder-selector li a.active:hover span +{ + color: white; +} + +#folder-selector li a.inbox span +{ + background-position: 6px -18px; +} +#folder-selector li a.drafts span +{ + background-position: 6px -37px; +} +#folder-selector li a.sent span +{ + background-position: 6px -54px; +} +#folder-selector li a.trash span +{ + background-position: 6px -91px; +} +#folder-selector li a.junk span +{ + background-position: 6px -73px; +} + + /***** tabbed interface elements *****/ div.tabsbar, diff --git a/skins/classic/functions.js b/skins/classic/functions.js index 2b7886d38..4312d57bc 100644 --- a/skins/classic/functions.js +++ b/skins/classic/functions.js @@ -419,6 +419,7 @@ body_mouseup: function(evt, p) && !this.popups[i].toggle && (!this.popups[i].editable || !this.target_overlaps(target, this.popups[i].id)) && (!this.popups[i].sticky || !rcube_mouse_is_over(evt, rcube_find_object(this.popups[i].id))) + && !$(target).is('.folder-selector-link') && !$(target).children('.folder-selector-link').length ) { window.setTimeout('rcmail_ui.show_popup("'+i+'",false);', 50); } diff --git a/skins/classic/includes/messagetoolbar.html b/skins/classic/includes/messagetoolbar.html index 8f8efd291..8d98c7e42 100644 --- a/skins/classic/includes/messagetoolbar.html +++ b/skins/classic/includes/messagetoolbar.html @@ -20,9 +20,6 @@ <roundcube:container name="toolbar" id="messagetoolbar" /> <roundcube:button name="markmenulink" id="markmenulink" type="link" class="button markmessage" title="markmessages" onclick="rcmail_ui.show_popup('markmenu');return false" content=" " /> <roundcube:button name="messagemenulink" id="messagemenulink" type="link" class="button messagemenu" title="moreactions" onclick="rcmail_ui.show_popup('messagemenu');return false" content=" " /> -<roundcube:if condition="template:name == 'message'" /> -<roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('move', this.options[this.selectedIndex].value)" class="mboxlist" folder_filter="mail" /> -<roundcube:endif /> </div> <div id="forwardmenu" class="popupmenu"> @@ -46,6 +43,8 @@ <li><roundcube:button class="printlink" command="print" label="printmessage" classAct="printlink active" /></li> <li><roundcube:button class="downloadlink" command="download" label="emlsave" classAct="downloadlink active" /></li> <li><roundcube:button class="editlink" command="edit" prop="new" label="editasnew" classAct="editlink active" /></li> + <li><roundcube:button class="movelink" command="move" label="moveto" classAct="copylink active" innerclass="folder-selector-link" /></li> + <li><roundcube:button class="copylink" command="copy" label="copyto" classAct="movelink active" innerclass="folder-selector-link" /></li> <li class="separator_below"><roundcube:button class="sourcelink" command="viewsource" label="viewsource" classAct="sourcelink active" /></li> <li><roundcube:button class="openlink" command="open" label="openinextwin" target="_blank" classAct="openlink active" /></li> <roundcube:container name="messagemenu" id="messagemenu" /> diff --git a/skins/classic/mail.css b/skins/classic/mail.css index e5d55e05c..c887ab346 100644 --- a/skins/classic/mail.css +++ b/skins/classic/mail.css @@ -175,23 +175,6 @@ background-position: -512px 0; } -#messagetoolbar select.mboxlist -{ - position: relative; - margin: 0 8px; - top: 7px; -} - -#messagetoolbar select.mboxlist option -{ - padding-left: 15px; -} - -#messagetoolbar select.mboxlist option[value=""] -{ - padding-left: 2px; -} - #messagemenu li a.active:hover, #attachmentmenu li a.active:hover, #markmessagemenu li a.active:hover diff --git a/skins/classic/templates/message.html b/skins/classic/templates/message.html index bd4fbf277..3ab0a2e5e 100644 --- a/skins/classic/templates/message.html +++ b/skins/classic/templates/message.html @@ -30,11 +30,13 @@ <div id="mailboxlist-container"> <div id="mailboxlist-title" class="boxtitle"><roundcube:label name="mailboxlist" /></div> <div class="boxlistcontent"> - <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist" maxlength="25" /> + <roundcube:object name="mailboxlist" id="mailboxlist" class="treelist" folder_filter="mail" /> </div> <div class="boxfooter"></div> </div> </div> +<roundcube:else /> +<roundcube:object name="mailboxlist" folder_filter="mail" type="js" /> <roundcube:endif /> <div id="messageframe"> diff --git a/skins/larry/images/listicons.png b/skins/larry/images/listicons.png Binary files differindex 8a17cc5bd..49342a318 100644 --- a/skins/larry/images/listicons.png +++ b/skins/larry/images/listicons.png diff --git a/skins/larry/includes/mailtoolbar.html b/skins/larry/includes/mailtoolbar.html index 59f2d581a..5708a94f1 100644 --- a/skins/larry/includes/mailtoolbar.html +++ b/skins/larry/includes/mailtoolbar.html @@ -39,6 +39,8 @@ <li><roundcube:button command="download" label="emlsave" class="icon" classAct="icon active" innerclass="icon download" /></li> <li><roundcube:button command="edit" prop="new" label="editasnew" class="icon" classAct="icon active" innerclass="icon edit" /></li> <li><roundcube:button command="viewsource" label="viewsource" class="icon" classAct="icon active" innerclass="icon viewsource" /></li> + <li><roundcube:button command="move" label="moveto" class="icon" classAct="icon active" innerclass="icon move folder-selector-link" /></li> + <li><roundcube:button command="copy" label="copyto" class="icon" classAct="icon active" innerclass="icon copy folder-selector-link" /></li> <li><roundcube:button command="open" label="openinextwin" target="_blank" class="icon" classAct="icon active" innerclass="icon extwin" /></li> <roundcube:container name="messagemenu" id="messagemenu" /> </ul> diff --git a/skins/larry/mail.css b/skins/larry/mail.css index 8e1634ad7..d3b09c087 100644 --- a/skins/larry/mail.css +++ b/skins/larry/mail.css @@ -417,12 +417,6 @@ a.iconbutton.threadmode.selected { right: 0; } -#messagetoolbar .toolbarselect { - position: absolute; - bottom: 6px; - right: 3px; -} - #messagesearchtools { position: absolute; right: 0; diff --git a/skins/larry/styles.css b/skins/larry/styles.css index 61f35b094..21d93c106 100644 --- a/skins/larry/styles.css +++ b/skins/larry/styles.css @@ -2329,6 +2329,38 @@ ul.toolbarmenu li span.conversation { z-index: 255; } +/*** folder selector ***/ + +#folder-selector li a span { + background: url("images/listicons.png") 4px -2021px no-repeat; + display: block; + height: 17px; + min-height: 14px; + padding: 4px 4px 1px 28px; + overflow: hidden; + max-width: 120px; + text-overflow: ellipsis; +} + +#folder-selector li a.virtual { + opacity: .2; +} + +#folder-selector li a.inbox span { + background-position: 4px -2049px; +} +#folder-selector li a.drafts span { + background-position: 4px -1388px; +} +#folder-selector li a.sent span { + background-position: 4px -2074px; +} +#folder-selector li a.trash span { + background-position: 4px -1508px; +} +#folder-selector li a.junk span { + background-position: 4px -2100px; +} /*** attachment list ***/ diff --git a/skins/larry/templates/message.html b/skins/larry/templates/message.html index e63705f76..df92b7511 100644 --- a/skins/larry/templates/message.html +++ b/skins/larry/templates/message.html @@ -16,9 +16,6 @@ <roundcube:button command="list" type="link" class="button back disabled" classAct="button back" classSel="button back pressed" label="back" /> <roundcube:endif /> <roundcube:include file="/includes/mailtoolbar.html" /> - <div class="toolbarselect"> - <roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('move', this.options[this.selectedIndex].value)" class="mailboxlist decorated" folder_filter="mail" /> - </div> </div> <roundcube:if condition="!env:extwin" /> @@ -36,6 +33,7 @@ <div id="mailview-right" class="offset uibox"> <roundcube:else /> +<roundcube:object name="mailboxlist" folder_filter="mail" type="js" /> <div id="mailview-right" class="offset fullwidth uibox"> <roundcube:endif /> diff --git a/skins/larry/ui.js b/skins/larry/ui.js index d203acf57..d66131075 100644 --- a/skins/larry/ui.js +++ b/skins/larry/ui.js @@ -369,8 +369,10 @@ function rcube_mail_ui() function body_mouseup(e) { var config, obj, target = e.target; + if (target.className == 'inner') target = e.target.parentNode; + for (var id in popups) { obj = popups[id]; config = popupconfig[id]; @@ -379,9 +381,10 @@ function rcube_mail_ui() && !config.toggle && (!config.editable || !target_overlaps(target, obj.get(0))) && (!config.sticky || !rcube_mouse_is_over(e, obj.get(0))) + && !$(target).is('.folder-selector-link') ) { var myid = id+''; - window.setTimeout(function(){ show_popupmenu(myid, false) }, 10); + window.setTimeout(function() { show_popupmenu(myid, false); }, 10); } } } |