summaryrefslogtreecommitdiff
path: root/skins/larry
diff options
context:
space:
mode:
Diffstat (limited to 'skins/larry')
-rw-r--r--skins/larry/addressbook.css17
-rw-r--r--skins/larry/images/buttons.pngbin38715 -> 39327 bytes
-rw-r--r--skins/larry/images/listicons.pngbin29713 -> 29530 bytes
-rw-r--r--skins/larry/includes/mailtoolbar.html1
-rw-r--r--skins/larry/mail.css36
-rw-r--r--skins/larry/settings.css5
-rw-r--r--skins/larry/styles.css86
-rw-r--r--skins/larry/templates/addressbook.html21
-rw-r--r--skins/larry/templates/compose.html4
-rw-r--r--skins/larry/templates/login.html6
-rw-r--r--skins/larry/templates/mail.html40
-rw-r--r--skins/larry/templates/message.html8
-rw-r--r--skins/larry/templates/messageerror.html4
-rw-r--r--skins/larry/templates/messagepart.html3
-rw-r--r--skins/larry/ui.js21
15 files changed, 179 insertions, 73 deletions
diff --git a/skins/larry/addressbook.css b/skins/larry/addressbook.css
index 54a14da0b..bfdd68127 100644
--- a/skins/larry/addressbook.css
+++ b/skins/larry/addressbook.css
@@ -39,7 +39,7 @@
#directorylistbox {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
width: 100%;
bottom: 0;
@@ -47,7 +47,7 @@
#addresslist {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
width: 280px;
bottom: 0;
@@ -55,7 +55,7 @@
#contacts-box {
position: absolute;
- top: 42px;
+ top: 0;
left: 292px;
right: 0;
bottom: 0;
@@ -71,7 +71,6 @@
background-position: -100px 0;
background-repeat: no-repeat;
overflow: hidden;
- padding-left: 36px;
text-overflow: ellipsis;
}
@@ -83,21 +82,11 @@
background-position: 6px -791px;
}
-#directorylist li.addressbook ul li:last-child {
- border-bottom: 0;
-}
-
-#directorylist li.addressbook ul.groups {
- margin: 0;
- padding: 0;
-}
-
#directorylist li.addressbook ul.groups li {
width: 100%;
}
#directorylist li.contactgroup a {
- padding-left: 62px;
background-position: 32px -1555px;
}
diff --git a/skins/larry/images/buttons.png b/skins/larry/images/buttons.png
index 8e2560198..e64931278 100644
--- a/skins/larry/images/buttons.png
+++ b/skins/larry/images/buttons.png
Binary files differ
diff --git a/skins/larry/images/listicons.png b/skins/larry/images/listicons.png
index 5abbbb229..551639876 100644
--- a/skins/larry/images/listicons.png
+++ b/skins/larry/images/listicons.png
Binary files differ
diff --git a/skins/larry/includes/mailtoolbar.html b/skins/larry/includes/mailtoolbar.html
index 5708a94f1..ac08a3200 100644
--- a/skins/larry/includes/mailtoolbar.html
+++ b/skins/larry/includes/mailtoolbar.html
@@ -11,6 +11,7 @@
</span>
<roundcube:button command="delete" type="link" class="button delete disabled" classAct="button delete" classSel="button delete pressed" label="delete" title="deletemessage" />
<roundcube:if condition="template:name == 'message'" />
+<roundcube:button command="move" type="link" class="button move disabled" classAct="button move" classSel="button move pressed" label="move" title="moveto" data-menu-pos="bottom" />
<roundcube:button command="print" type="link" class="button print disabled" classAct="button print" classSel="button print pressed" label="print" title="printmessage" />
<roundcube:endif />
<roundcube:container name="toolbar" id="mailtoolbar" />
diff --git a/skins/larry/mail.css b/skins/larry/mail.css
index 35d79d184..34ce789d0 100644
--- a/skins/larry/mail.css
+++ b/skins/larry/mail.css
@@ -34,10 +34,11 @@
#mailview-top {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
right: 0;
bottom: 0px;
+ overflow: visible; /* fixes display issues of fixed list header in IE */
}
#mailview-bottom {
@@ -58,7 +59,7 @@
#mailboxcontainer,
#messagelistcontainer {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
width: 100%;
bottom: 0;
@@ -201,6 +202,14 @@ a.iconbutton.threadmode.selected {
background-position: 6px -406px;
}
+#mailboxlist li.mailbox.trash.empty > a {
+ background-position: 6px -1924px;
+}
+
+#mailboxlist li.mailbox.trash.empty.selected > a {
+ background-position: 6px -1948px;
+}
+
#mailboxlist li.mailbox.archive > a {
background-position: 6px -1699px;
}
@@ -241,6 +250,14 @@ a.iconbutton.threadmode.selected {
background-position: 23px -406px;
}
+#mailboxlist li.mailbox ul li.trash.empty > a {
+ background-position: 23px -1924px;
+}
+
+#mailboxlist li.mailbox ul li.trash.empty.selected > a {
+ background-position: 23px -1948px;
+}
+
#mailboxlist li.mailbox ul li.archive > a {
background-position: 23px -1699px;
}
@@ -1061,20 +1078,20 @@ div.hide-headers {
margin: 8px;
}
-#message-objects div.notice,
-#message-buttons div.notice {
+#message-objects div.notice {
display: block;
color: #960;
border: 1px solid #ffdf0e;
background-color: #fef893;
background-position: 5px -83px;
- padding: 6px 12px 4px 30px;
+ padding: 6px 12px 6px 30px;
white-space: normal;
}
#message-objects div a.button,
#messagebody span.part-notice a.button {
margin-left: 10px;
+ margin-top: -1px;
}
div.message-part,
@@ -1198,7 +1215,7 @@ div.message-partheaders .headers-table td.header {
#messagepartcontainer {
position: absolute;
- top: 42px;
+ top: 0;
left: 232px;
right: 0;
bottom: 0;
@@ -1212,7 +1229,7 @@ div.message-partheaders .headers-table td.header {
#messagepartheader {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
width: 220px;
bottom: 0;
@@ -1254,7 +1271,7 @@ div.message-partheaders .headers-table td.header {
#compose-contacts {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
width: 100%;
bottom: 0;
@@ -1357,7 +1374,7 @@ div.message-partheaders .headers-table td.header {
#compose-content {
position: absolute;
- top: 42px;
+ top: 0;
left: 0;
right: 0;
bottom: 0px;
@@ -1447,7 +1464,6 @@ div.message-partheaders .headers-table td.header {
-o-box-shadow: inset 0 1px 0 0 #fff;
-webkit-box-shadow: inset 0 1px 0 0 #fff;
-moz-box-shadow: inset 0 1px 0 0 #fff;
-
}
.composeoption {
diff --git a/skins/larry/settings.css b/skins/larry/settings.css
index af667b9e7..675ef9973 100644
--- a/skins/larry/settings.css
+++ b/skins/larry/settings.css
@@ -319,3 +319,8 @@ img.skinthumbnail {
#rcmfd_signature_toolbar2 td {
width: auto;
}
+
+.mailtoprotohandler-status {
+ padding-left: 1em;
+ font-style: italic;
+}
diff --git a/skins/larry/styles.css b/skins/larry/styles.css
index 21d93c106..518ac725a 100644
--- a/skins/larry/styles.css
+++ b/skins/larry/styles.css
@@ -964,6 +964,14 @@ a.iconlink.upload {
bottom: 20px;
}
+#mainscreencontent {
+ position: absolute;
+ top: 42px;
+ left: 0;
+ right: 0;
+ bottom: 0;
+}
+
.minimal #mainscreen {
top: 62px;
}
@@ -996,11 +1004,6 @@ a.iconlink.upload {
}
.minwidth {
- position: absolute;
- top: 0;
- left: 0;
- bottom: 0;
- width: 100%;
min-width: 1024px;
}
@@ -1175,16 +1178,61 @@ ul.treelist li {
position: relative;
}
+ul.treelist li ul {
+ margin: 0;
+ padding: 0;
+}
+
+ul.treelist li ul li:last-child {
+ border-bottom: 0;
+}
+
+ul.treelist li a {
+ display: block;
+ padding-left: 20px;
+ overflow: hidden;
+ text-overflow: ellipsis;
+}
+
+ul.treelist ul li a {
+ padding-left: 38px;
+}
+
+ul.treelist ul ul li a {
+ padding-left: 54px;
+}
+
+ul.treelist.iconized li a {
+ padding-left: 36px;
+}
+
+ul.treelist.iconized li ul li a {
+ padding-left: 62px;
+}
+
ul.treelist li div.treetoggle {
position: absolute;
- top: 13px;
- left: 19px;
+ top: 7px;
+ left: 4px;
width: 13px;
height: 13px;
background: url(images/listicons.png) -3px -144px no-repeat;
cursor: pointer;
}
+ul.treelist li ul li div.treetoggle {
+ left: 22px;
+}
+
+ul.treelist.iconized li div.treetoggle {
+ top: 13px;
+ left: 19px;
+}
+
+ul.treelist.iconized li ul li div.treetoggle {
+ left: 35px;
+}
+
ul.treelist li div.treetoggle.expanded {
background-position: -3px -168px;
}
@@ -1424,7 +1472,7 @@ table.records-table {
.records-table tr.unfocused td {
color: #fff !important;
- background: #4db0d2 !important;
+ background-color: #4db0d2 !important;
}
.records-table tr.unfocused td a,
@@ -1564,6 +1612,12 @@ body.iframe .footerleft.floating:before,
width: 95%;
}
+.propform a.disabled {
+ color: #999;
+ text-decoration: none;
+ cursor: default;
+}
+
fieldset.floating {
float: left;
margin-right: 10px;
@@ -1895,6 +1949,10 @@ ul.proplist li {
background-position: center -1094px;
}
+.toolbar a.button.move {
+ background-position: center -1971px;
+}
+
.toolbar a.button.more {
background-position: center -850px;
}
@@ -2217,6 +2275,14 @@ ul.toolbarmenu li span.conversation {
background-position: 0 -1532px;
}
+ul.toolbarmenu li span.move {
+ background-position: 0 -2126px;
+}
+
+ul.toolbarmenu li span.copy {
+ background-position: 0 -2150px;
+}
+
#snippetslist {
max-width: 200px;
}
@@ -2331,6 +2397,10 @@ ul.toolbarmenu li span.conversation {
/*** folder selector ***/
+#folder-selector {
+ z-index: 1000;
+}
+
#folder-selector li a span {
background: url("images/listicons.png") 4px -2021px no-repeat;
display: block;
diff --git a/skins/larry/templates/addressbook.html b/skins/larry/templates/addressbook.html
index 9f83853b2..97efdc6f3 100644
--- a/skins/larry/templates/addressbook.html
+++ b/skins/larry/templates/addressbook.html
@@ -24,13 +24,22 @@
<roundcube:container name="toolbar" id="addressbooktoolbar" />
</div>
+<!-- search box -->
+<div id="quicksearchbar" class="searchbox">
+<roundcube:object name="searchform" id="quicksearchbox" />
+<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
+<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
+</div>
+
+<div id="mainscreencontent">
+
<div id="addressview-left">
<!-- sources/groups list -->
<div id="directorylistbox" class="uibox listbox">
<h2 id="directorylist-header" class="boxtitle"><roundcube:label name="groups" /></h2>
<div id="directorylist-content" class="scroller withfooter">
- <roundcube:object name="directorylist" id="directorylist" class="treelist listing" />
+ <roundcube:object name="directorylist" id="directorylist" class="treelist listing iconized" />
</div>
<div id="directorylist-footer" class="boxfooter">
<roundcube:button command="group-create" type="link" title="newcontactgroup" class="listbutton add disabled" classAct="listbutton add" innerClass="inner" content="+" /><roundcube:button name="groupoptions" id="groupoptionslink" type="link" title="moreactions" class="listbutton groupactions" onclick="UI.show_popup('groupoptions');return false" innerClass="inner" content="&#9881;" />
@@ -41,13 +50,6 @@
<div id="addressview-right">
-<!-- search box -->
-<div id="quicksearchbar" class="searchbox">
-<roundcube:object name="searchform" id="quicksearchbox" />
-<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
-<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
-</div>
-
<!-- contacts list -->
<div id="addresslist" class="uibox listbox">
<roundcube:object name="addresslisttitle" label="contacts" tag="h2" class="boxtitle" />
@@ -73,9 +75,10 @@
</div>
</div>
-
</div><!-- end addressview-right -->
+</div><!-- end mainscreencontent -->
+
</div><!-- end mainscreen -->
<div id="exportmenu" class="popupmenu">
diff --git a/skins/larry/templates/compose.html b/skins/larry/templates/compose.html
index 11662d185..a7f2e7e2f 100644
--- a/skins/larry/templates/compose.html
+++ b/skins/larry/templates/compose.html
@@ -35,6 +35,8 @@
</div>
</div>
+<div id="mainscreencontent">
+
<div id="composeview-left">
<!-- inline address book -->
@@ -181,6 +183,8 @@
</div><!-- end mailview-right -->
+</div><!-- end mainscreencontent -->
+
</div><!-- end mainscreen -->
<div id="upload-dialog" class="propform popupdialog" title="<roundcube:label name='addattachment' />">
diff --git a/skins/larry/templates/login.html b/skins/larry/templates/login.html
index 8da941189..64ff6be92 100644
--- a/skins/larry/templates/login.html
+++ b/skins/larry/templates/login.html
@@ -12,11 +12,9 @@
<roundcube:object name="logo" src="/images/roundcube_logo.png" id="logo" />
<roundcube:form name="form" method="post">
-<roundcube:object name="loginform" form="form" size="40" />
-
-<p class="formbuttons"><input type="submit" class="button mainaction" value="<roundcube:label name='login' />" /></p>
-
+<roundcube:object name="loginform" form="form" size="40" submit=true />
</form>
+
</div>
<div class="box-bottom">
diff --git a/skins/larry/templates/mail.html b/skins/larry/templates/mail.html
index e2bf8901c..2f6fbe28c 100644
--- a/skins/larry/templates/mail.html
+++ b/skins/larry/templates/mail.html
@@ -11,9 +11,8 @@
<roundcube:endif />
</style>
</head>
-<body>
+<body class="minwidth">
-<div class="minwidth">
<roundcube:include file="/includes/header.html" />
<div id="mainscreen">
@@ -24,6 +23,23 @@
<roundcube:include file="/includes/mailtoolbar.html" />
</div>
+<div id="messagesearchtools">
+
+<!-- search filter -->
+<div id="searchfilter">
+ <roundcube:object name="searchfilter" class="searchfilter decorated" />
+</div>
+
+<!-- search box -->
+<div id="quicksearchbar" class="searchbox">
+<roundcube:object name="searchform" id="quicksearchbox" />
+<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
+<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
+</div>
+
+</div>
+
+<div id="mainscreencontent">
<div id="mailview-left">
<!-- folders list -->
@@ -43,22 +59,6 @@
<div id="mailview-right">
-<div id="messagesearchtools">
-
-<!-- search filter -->
-<div id="searchfilter">
- <roundcube:object name="searchfilter" class="searchfilter decorated" />
-</div>
-
-<!-- search box -->
-<div id="quicksearchbar" class="searchbox">
-<roundcube:object name="searchform" id="quicksearchbox" />
-<roundcube:button name="searchmenulink" id="searchmenulink" class="iconbutton searchoptions" onclick="UI.show_popup('searchmenu');return false" title="searchmod" content=" " />
-<roundcube:button command="reset-search" id="searchreset" class="iconbutton reset" title="resetsearch" content=" " />
-</div>
-
-</div>
-
<roundcube:if condition="config:preview_pane == true" />
<div id="mailview-top" class="uibox">
<roundcube:else />
@@ -114,9 +114,9 @@
</div><!-- end mailview-right -->
-</div><!-- end mainscreen -->
+</div><!-- end mainscreencontent -->
-</div><!-- end minwidth -->
+</div><!-- end mainscreen -->
<div id="searchmenu" class="popupmenu">
<ul class="toolbarmenu">
diff --git a/skins/larry/templates/message.html b/skins/larry/templates/message.html
index df92b7511..0343004f6 100644
--- a/skins/larry/templates/message.html
+++ b/skins/larry/templates/message.html
@@ -20,6 +20,8 @@
<roundcube:if condition="!env:extwin" />
+<div id="mainscreencontent">
+
<div id="mailview-left">
<!-- folders list -->
@@ -31,7 +33,7 @@
</div>
-<div id="mailview-right" class="offset uibox">
+<div id="mailview-right" class="uibox">
<roundcube:else />
<roundcube:object name="mailboxlist" folder_filter="mail" type="js" />
@@ -84,6 +86,10 @@
</div><!-- end mailview-right -->
+<roundcube:if condition="!env:extwin" />
+</div><!-- end mainscreencontent -->
+<roundcube:endif />
+
</div><!-- end mainscreen -->
<div id="attachmentmenu" class="popupmenu">
diff --git a/skins/larry/templates/messageerror.html b/skins/larry/templates/messageerror.html
index dbe373a12..d509ce804 100644
--- a/skins/larry/templates/messageerror.html
+++ b/skins/larry/templates/messageerror.html
@@ -23,6 +23,8 @@
</div>
</div>
+<div id="mainscreencontent">
+
<div id="mailview-left">
<!-- folders list -->
@@ -40,6 +42,8 @@
</div><!-- end mailview-right -->
+</div><!-- end mainscreencontent -->
+
</div><!-- end mainscreen -->
<roundcube:include file="/includes/footer.html" />
diff --git a/skins/larry/templates/messagepart.html b/skins/larry/templates/messagepart.html
index 0ec935873..3b878c9d7 100644
--- a/skins/larry/templates/messagepart.html
+++ b/skins/larry/templates/messagepart.html
@@ -16,6 +16,8 @@
<roundcube:container name="toolbar" id="messagetoolbar" />
</div>
+<div id="mainscreencontent">
+
<div id="messagepartheader" class="uibox listbox">
<h2 class="boxtitle"><roundcube:label name="properties" /></h2>
<div class="scroller">
@@ -30,6 +32,7 @@
</div>
</div>
+</div>
<roundcube:include file="/includes/footer.html" />
diff --git a/skins/larry/ui.js b/skins/larry/ui.js
index b95e1f1c6..74aef8d8e 100644
--- a/skins/larry/ui.js
+++ b/skins/larry/ui.js
@@ -331,7 +331,7 @@ function rcube_mail_ui()
});
// set min-width to show all toolbar buttons
- var screen = $('body > div.minwidth');
+ var screen = $('body.minwidth');
if (screen.length) {
screen.css('min-width', $('.toolbar').width() + $('#quicksearchbar').width() + $('#searchfilter').width() + 30);
}
@@ -1224,6 +1224,7 @@ function rcube_splitter(p)
{
this.p1 = $(this.p.p1);
this.p2 = $(this.p.p2);
+ this.parent = this.p1.parent();
// check if referenced elements exist, otherwise abort
if (!this.p1.length || !this.p2.length)
@@ -1236,7 +1237,7 @@ function rcube_splitter(p)
.attr('id', this.id)
.attr('unselectable', 'on')
.addClass('splitter ' + (this.horizontal ? 'splitter-h' : 'splitter-v'))
- .appendTo(this.p1.parent())
+ .appendTo(this.parent)
.bind('mousedown', onDragStart);
if (this.horizontal) {
@@ -1275,7 +1276,7 @@ function rcube_splitter(p)
this.p2.css('top', Math.ceil(this.pos + this.halfsize + 2) + 'px');
this.handle.css('top', Math.round(this.pos - this.halfsize + this.offset)+'px');
if (bw.ie) {
- var new_height = parseInt(this.p2.parent().outerHeight(), 10) - parseInt(this.p2.css('top'), 10) - (bw.ie8 ? 2 : 0);
+ var new_height = parseInt(this.parent.outerHeight(), 10) - parseInt(this.p2.css('top'), 10) - (bw.ie8 ? 2 : 0);
this.p2.css('height', (new_height > 0 ? new_height : 0) + 'px');
}
}
@@ -1284,7 +1285,7 @@ function rcube_splitter(p)
this.p2.css('left', Math.ceil(this.pos + this.halfsize) + 'px');
this.handle.css('left', Math.round(this.pos - this.halfsize + this.offset + 3)+'px');
if (bw.ie) {
- var new_width = parseInt(this.p2.parent().outerWidth(), 10) - parseInt(this.p2.css('left'), 10) ;
+ var new_width = parseInt(this.parent.outerWidth(), 10) - parseInt(this.p2.css('left'), 10) ;
this.p2.css('width', (new_width > 0 ? new_width : 0) + 'px');
}
}
@@ -1357,7 +1358,7 @@ function rcube_splitter(p)
var pos = rcube_event.get_mouse_pos(e);
if (me.relative) {
- var parent = me.p1.parent().offset();
+ var parent = me.parent.offset();
pos.x -= parent.left;
pos.y -= parent.top;
}
@@ -1365,12 +1366,18 @@ function rcube_splitter(p)
if (me.horizontal) {
if (((pos.y - me.halfsize) > me.p1pos.top) && ((pos.y + me.halfsize) < (me.p2pos.top + me.p2.outerHeight()))) {
me.pos = Math.max(me.min, pos.y - me.offset);
+ if (me.pos > me.min)
+ me.pos = Math.min(me.pos, me.parent.height() - me.min);
+
me.resize();
}
}
else {
if (((pos.x - me.halfsize) > me.p1pos.left) && ((pos.x + me.halfsize) < (me.p2pos.left + me.p2.outerWidth()))) {
me.pos = Math.max(me.min, pos.x - me.offset);
+ if (me.pos > me.min)
+ me.pos = Math.min(me.pos, me.parent.width() - me.min);
+
me.resize();
}
}
@@ -1409,11 +1416,11 @@ function rcube_splitter(p)
function onResize(e)
{
if (me.horizontal) {
- var new_height = parseInt(me.p2.parent().outerHeight(), 10) - parseInt(me.p2[0].style.top, 10) - (bw.ie8 ? 2 : 0);
+ var new_height = parseInt(me.parent.outerHeight(), 10) - parseInt(me.p2[0].style.top, 10) - (bw.ie8 ? 2 : 0);
me.p2.css('height', (new_height > 0 ? new_height : 0) +'px');
}
else {
- var new_width = parseInt(me.p2.parent().outerWidth(), 10) - parseInt(me.p2[0].style.left, 10);
+ var new_width = parseInt(me.parent.outerWidth(), 10) - parseInt(me.p2[0].style.left, 10);
me.p2.css('width', (new_width > 0 ? new_width : 0) + 'px');
}
};