summaryrefslogtreecommitdiff
path: root/skins/larry
diff options
context:
space:
mode:
authorThomas Bruederli <thomas@roundcube.net>2012-09-05 16:17:56 +0200
committerThomas Bruederli <thomas@roundcube.net>2012-09-05 16:17:56 +0200
commitba3cd80c0c61e679cef92a1f4f51e645090a1472 (patch)
tree4bd7c352dade0d18c19f25d65b04a5b896813918 /skins/larry
parent957ac142e3c80db3b86df4f0db3b82cfa8856206 (diff)
parente263994adc3f8f331c6167da1665c1920a5142f9 (diff)
Merge branch 'master' of github.com:roundcube/roundcubemail
Diffstat (limited to 'skins/larry')
-rw-r--r--skins/larry/addressbook.css1
-rw-r--r--skins/larry/ie7hacks.css16
-rw-r--r--skins/larry/iehacks.css2
-rw-r--r--skins/larry/images/contactpic_32px.pngbin4883 -> 3422 bytes
-rw-r--r--skins/larry/images/contactpic_48px.pngbin0 -> 3812 bytes
-rw-r--r--skins/larry/includes/links.html1
-rw-r--r--skins/larry/mail.css90
-rw-r--r--skins/larry/styles.css6
-rw-r--r--skins/larry/svggradient.php2
-rw-r--r--skins/larry/svggradients.css2
-rw-r--r--skins/larry/templates/message.html61
-rw-r--r--skins/larry/templates/messageerror.html10
-rw-r--r--skins/larry/templates/messagepreview.html5
-rw-r--r--skins/larry/ui.js62
14 files changed, 148 insertions, 110 deletions
diff --git a/skins/larry/addressbook.css b/skins/larry/addressbook.css
index fe087aece..74bc0d7d8 100644
--- a/skins/larry/addressbook.css
+++ b/skins/larry/addressbook.css
@@ -34,7 +34,6 @@
position: absolute;
top: -6px;
left: 0;
- right: 260px;
height: 40px;
white-space: nowrap;
z-index: 10;
diff --git a/skins/larry/ie7hacks.css b/skins/larry/ie7hacks.css
index 6161d03dd..935a504fe 100644
--- a/skins/larry/ie7hacks.css
+++ b/skins/larry/ie7hacks.css
@@ -7,10 +7,16 @@
* License. It is allowed to copy, distribute, transmit and to adapt the work
* by keeping credits to the original autors in the README file.
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
- *
- * $Id$
*/
+/* #1488618 */
+#mainscreen {
+ height: expression((parseInt(document.documentElement.clientHeight)-108)+'px');
+}
+#mainscreen.offset {
+ height: expression((parseInt(document.documentElement.clientHeight)-150)+'px');
+}
+
input.button {
display: inline;
font-size: 90%;
@@ -23,7 +29,7 @@ a.deletebutton,
.boxfooter .listbutton .inner,
.attachmentslist li a.delete,
.attachmentslist li a.cancelupload,
-#messagepreviewheader .iconlink {
+#messageheader .iconlink {
/* workaround for text-indent which also offsets the background image */
text-indent: 0;
font-size: 0;
@@ -39,7 +45,7 @@ a.deletebutton,
.pagenav a.button,
.pagenav a.button span.inner,
-#messagepreviewheader .iconlink,
+#messageheader .iconlink,
#uploadform a.iconlink {
display: inline;
}
@@ -61,7 +67,7 @@ a.deletebutton,
text-align: left;
}
-#messagepreviewheader .iconlink {
+#messageheader .iconlink {
color: #fff;
height: 14px;
}
diff --git a/skins/larry/iehacks.css b/skins/larry/iehacks.css
index 288202111..bba93dc33 100644
--- a/skins/larry/iehacks.css
+++ b/skins/larry/iehacks.css
@@ -143,7 +143,7 @@ ul.toolbarmenu li a.active:hover,
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#005d76', endColorstr='#004558', GradientType=0);
}
-#messageheader, #partheader, #composeheaders {
+#partheader, #composeheaders {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e9e9e9', GradientType=0);
}
diff --git a/skins/larry/images/contactpic_32px.png b/skins/larry/images/contactpic_32px.png
index 276f1974f..25a81418d 100644
--- a/skins/larry/images/contactpic_32px.png
+++ b/skins/larry/images/contactpic_32px.png
Binary files differ
diff --git a/skins/larry/images/contactpic_48px.png b/skins/larry/images/contactpic_48px.png
new file mode 100644
index 000000000..9cd3bceaf
--- /dev/null
+++ b/skins/larry/images/contactpic_48px.png
Binary files differ
diff --git a/skins/larry/includes/links.html b/skins/larry/includes/links.html
index 0ddc2e160..8bd8012e1 100644
--- a/skins/larry/includes/links.html
+++ b/skins/larry/includes/links.html
@@ -1,3 +1,4 @@
+<meta http-equiv="X-UA-Compatible" content="IE=EDGE" />
<link rel="shortcut icon" href="/images/favicon.ico"/>
<link rel="stylesheet" type="text/css" href="/styles.css" />
<roundcube:if condition="in_array(env:task, array('mail','addressbook','settings'))" />
diff --git a/skins/larry/mail.css b/skins/larry/mail.css
index 4fff24307..496cbbd15 100644
--- a/skins/larry/mail.css
+++ b/skins/larry/mail.css
@@ -38,10 +38,6 @@
bottom: 28px;
}
-#mailview-top.fullheight {
- border-radius: 4px 4px 0 0;
-}
-
#mailview-bottom {
position: absolute;
left: 0;
@@ -50,6 +46,10 @@
height: 26px;
}
+#mailview-top.fullheight {
+ border-radius: 4px 4px 0 0;
+}
+
#folderlist-header {
width: 100%;
height: 12px;
@@ -341,7 +341,6 @@ a.iconbutton.threadmode.selected {
#messagetoolbar {
position: absolute;
top: -6px;
- right: 390px;
left: 0;
height: 40px;
white-space: nowrap;
@@ -362,7 +361,7 @@ a.iconbutton.threadmode.selected {
position: absolute;
right: 0;
top: 0;
- width: 240px;
+ width: 400px;
}
#mailpreviewtoggle {
@@ -383,11 +382,7 @@ a.iconbutton.threadmode.selected {
/*** message list ***/
#messagelist thead td:first-child {
- border-radius: 4px 0 0 0;
-}
-
-#messagelist thead td:last-child {
- border-radius: 0 4px 0 0;
+ border-radius: 4px 0 0 0; /* for Chrome */
}
#messagelist tr td.attachment,
@@ -680,15 +675,14 @@ a.iconbutton.threadmode.selected {
#messagecontent {
position: absolute;
- top: 140px;
+ top: 0;
left: 0;
width: 100%;
- bottom: 0;
+ bottom: 28px;
overflow: auto;
border-radius: 4px 4px 0 0;
}
-#messageheader,
#partheader,
#composeheaders {
position: relative;
@@ -712,7 +706,7 @@ h2.subject {
h3.subject {
font-size: 14px;
- margin: 0 8em 0 0;
+ margin: 0 13em 0 0;
padding: 8px 8px 4px 8px;
white-space: nowrap;
overflow: hidden;
@@ -787,6 +781,7 @@ h3.subject {
background: -ms-linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
background: linear-gradient(left, #fbfbfb 0, #e9e9e9 100%);
border-right: 1px solid #dfdfdf;
+ border-radius: 3px 0 0 0; /* for Opera */
}
#previewheaderstoggle .iconlink {
@@ -801,28 +796,29 @@ h3.subject {
#previewheaderstoggle.remove .iconlink {
top: auto;
- bottom: 5px;
+ bottom: 15px;
background-position: -5px -242px;
}
-div.more-headers {
- cursor: pointer;
- height: 10px;
- background: url(images/buttons.png) center -1619px no-repeat;
+#previewheaderstoggle .iconlink.allheaders {
+ display: none;
}
-div.hide-headers {
- background-position: center -1629px;
+#previewheaderstoggle.remove .iconlink.allheaders {
+ top: auto;
+ bottom: 2px;
+ display: inline-block;
+ background-position: -27px -242px;
}
#all-headers {
position: relative;
- margin: 0 10px;
+ margin: 2px 0;
padding: 0;
height: 180px;
- border: 1px solid #bbb;
+ background-color: #f0f0f0;
+ overflow: hidden;
border-radius: 4px;
- background: #fff;
}
#headers-source {
@@ -832,25 +828,30 @@ div.hide-headers {
left: 0;
right: 0;
bottom: 0;
- padding: 2px 5px;
+ padding: 2px;
overflow: auto;
text-align: left;
- color: #333;
+ color: #666;
}
-#messagepreviewheader {
+#messageheader {
position: relative;
height: auto;
margin: 0 8px 0 0;
- padding: 0 0 6px 72px;
+ padding: 0 0 0 72px;
border-bottom: 2px solid #f0f0f0;
}
-#messagepreviewheader h3.subject {
+#messagecontent #messageheader {
+ padding: 0 0 0 90px;
+ min-height: 68px;
+}
+
+#messageheader h3.subject {
padding: 8px 8px 2px 0;
}
-#messagepreviewheader #contactphoto {
+#messageheader #contactphoto {
display: block;
position: absolute;
top: 11px;
@@ -862,52 +863,40 @@ div.hide-headers {
border-radius: 3px;
}
-#messagepreviewheader #contactphoto img {
+#messageheader #contactphoto img {
width: 32px;
height: auto;
border-radius: 3px;
}
-#messageheader #contactphoto {
- display: block;
- position: absolute;
- top: 40px;
- right: 10px;
+#messagecontent #messageheader #contactphoto {
+ top: 11px;
+ left: 31px;
width: 48px;
height: 48px;
- overflow: hidden;
+ background: url(images/contactpic_48px.png) center center no-repeat #fff;
border-radius: 4px;
}
-#messageheader #contactphoto img {
+#messagecontent #messageheader #contactphoto img {
width: 48px;
height: auto;
border-radius: 4px;
}
-#messagepreviewheader #countcontrols,
#messageheader #countcontrols {
position: absolute;
top: 8px;
- right: 8px;
- width: 20em;
+ right: 0;
text-align: right;
white-space: nowrap;
}
-#messageheader .pagenav .countdisplay {
- min-width: 0;
- padding-right: 0.5em;
- white-space: nowrap;
-}
-
-#messagecontent .leftcol,
#messagepreview .leftcol {
margin-right: 252px;
overflow-x: auto;
}
-#messagecontent .rightcol,
#messagepreview .rightcol {
float: right;
/*
@@ -921,6 +910,7 @@ div.hide-headers {
min-height: 200px;
background: #f0f0f0;
padding: 8px;
+ border-radius: 4px;
}
#messagebody {
diff --git a/skins/larry/styles.css b/skins/larry/styles.css
index 0a72c5048..f2d4888b1 100644
--- a/skins/larry/styles.css
+++ b/skins/larry/styles.css
@@ -647,6 +647,7 @@ a.iconlink.upload {
.uibox {
border: 1px solid #a3a3a3;
border-radius: 4px;
+ overflow: hidden;
box-shadow: 0 0 2px #999;
-o-box-shadow: 0 0 2px #999;
-webkit-box-shadow: 0 0 2px #999;
@@ -660,7 +661,7 @@ a.iconlink.upload {
left: 0;
bottom: 0;
width: 100%;
- min-width: 1150px;
+ min-width: 1024px;
}
.scroller {
@@ -698,7 +699,8 @@ a.iconlink.upload {
left: 0;
width: 100%;
bottom: 0;
- overflow: auto;
+ overflow-x: hidden;
+ overflow-y: auto;
}
.listbox .scroller.withfooter {
diff --git a/skins/larry/svggradient.php b/skins/larry/svggradient.php
index c54bdec17..8db2c5f63 100644
--- a/skins/larry/svggradient.php
+++ b/skins/larry/svggradient.php
@@ -11,6 +11,8 @@
* See http://creativecommons.org/licenses/by-sa/3.0/ for details.
*/
+ini_set('error_reporting', E_ALL &~ (E_NOTICE | E_STRICT));
+
header('Content-Type: image/svg+xml');
header("Expires: ".gmdate("D, d M Y H:i:s", time()+864000)." GMT");
header("Cache-Control: max-age=864000");
diff --git a/skins/larry/svggradients.css b/skins/larry/svggradients.css
index 143fb375f..4f1dd8a05 100644
--- a/skins/larry/svggradients.css
+++ b/skins/larry/svggradients.css
@@ -133,7 +133,7 @@ ul.toolbarmenu li a.active:hover,
background-image: url(svggradient.php?c=005d76;004558);
}
-#messageheader, #partheader, #composeheaders {
+#partheader, #composeheaders {
background-image: url(svggradient.php?c=ffffff;e9e9e9);
}
diff --git a/skins/larry/templates/message.html b/skins/larry/templates/message.html
index 1becd711a..89b7bd808 100644
--- a/skins/larry/templates/message.html
+++ b/skins/larry/templates/message.html
@@ -24,20 +24,38 @@
<!-- folders list -->
<div id="mailboxcontainer" class="uibox listbox">
-<div class="scroller">
-<roundcube:object name="mailboxlist" id="mailboxlist" class="listing" folder_filter="mail" unreadwrap="%s" />
-</div>
+ <div class="scroller">
+ <roundcube:object name="mailboxlist" id="mailboxlist" class="listing" folder_filter="mail" unreadwrap="%s" />
+ </div>
</div>
-</div>
+</div><!-- end mailview-left -->
+
+<div id="mailview-right" class="uibox" style="top: 42px">
+
+<div id="messagecontent">
+
+<div id="messageheader">
+<h3 class="subject"><roundcube:object name="messageHeaders" valueOf="subject" /></h3>
+
+<a href="#details" id="previewheaderstoggle"><span class="iconlink"></span><span id="headerstoggleall" class="iconlink allheaders"></span></a>
-<div id="mailview-right">
+<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
-<div id="mailview-top">
-<div id="messageheader" class="uibox">
-<h2 class="subject"><roundcube:object name="messageHeaders" valueOf="subject" /></h2>
-<roundcube:object name="messageHeaders" class="headers-table" addicon="/images/addcontact.png" exclude="subject" />
-<roundcube:object name="messageFullHeaders" id="full-headers" />
+<table class="headers-table" id="preview-shortheaders"><tbody><tr>
+<roundcube:if condition="env:mailbox == config:drafts_mbox || env:mailbox == config:sent_mbox">
+ <td class="header-title"><roundcube:label name="to" /></td>
+ <td class="header from"><roundcube:object name="messageHeaders" valueOf="to" addicon="/images/addcontact.png" /></td>
+<roundcube:else />
+ <td class="header-title"><roundcube:label name="from" /></td>
+ <td class="header from"><roundcube:object name="messageHeaders" valueOf="from" addicon="/images/addcontact.png" /></td>
+<roundcube:endif />
+ <td class="header-title"><roundcube:label name="date" /></td>
+ <td class="header from"><roundcube:object name="messageHeaders" valueOf="date" /></td>
+</tr></tbody></table>
+
+<roundcube:object name="messageHeaders" id="preview-allheaders" class="headers-table" addicon="/images/addcontact.png" exclude="subject,replyto" />
+<roundcube:object name="messageFullHeaders" no-switch="true" />
<!-- record navigation -->
<div id="countcontrols" class="pagenav">
@@ -46,24 +64,21 @@
<roundcube:button command="nextmessage" type="link" class="button nextpage disabled" classAct="button nextpage" classSel="button nextpage pressed" innerClass="inner" title="nextmessage" content="&amp;gt;" />
</div>
-<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
-</div>
+</div><!-- end messageheader -->
-<div id="messagecontent" class="uibox">
-<div class="rightcol">
-<roundcube:object name="messageAttachments" id="attachment-list" class="attachmentslist" />
-</div>
-<div class="leftcol">
-<roundcube:object name="messageObjects" id="message-objects" />
-<roundcube:object name="messageBody" id="messagebody" />
-</div>
+<div id="messagepreview">
+ <div class="rightcol">
+ <roundcube:object name="messageAttachments" id="attachment-list" class="attachmentslist" />
+ </div>
+ <div class="leftcol">
+ <roundcube:object name="messageObjects" id="message-objects" />
+ <roundcube:object name="messageBody" id="messagebody" />
+ </div>
</div>
-</div><!-- end mailview-top -->
+</div><!-- end messagecontent -->
-<div id="mailview-bottom" class="uibox">
<roundcube:object name="message" id="message" class="statusbar" />
-</div>
</div><!-- end mailview-right -->
diff --git a/skins/larry/templates/messageerror.html b/skins/larry/templates/messageerror.html
index 70181f174..2f5243200 100644
--- a/skins/larry/templates/messageerror.html
+++ b/skins/larry/templates/messageerror.html
@@ -27,8 +27,6 @@
</div>
-<div id="mailview-right">
-
<!-- toolbar -->
<div id="messagetoolbar" class="fullwidth">
<div id="mailtoolbar" class="toolbar">
@@ -36,11 +34,11 @@
</div>
</div>
-<div id="mailview-top" class="uibox watermark"></div>
+<div id="mailview-right" class="uibox" style="top: 42px">
-<div id="mailview-bottom" class="uibox">
- <roundcube:object name="message" id="message" class="statusbar" />
-</div>
+<div id="messagecontent" class="watermark"></div>
+
+<roundcube:object name="message" id="message" class="statusbar" />
</div><!-- end mailview-right -->
diff --git a/skins/larry/templates/messagepreview.html b/skins/larry/templates/messagepreview.html
index b53683ec1..74c414b0d 100644
--- a/skins/larry/templates/messagepreview.html
+++ b/skins/larry/templates/messagepreview.html
@@ -6,10 +6,10 @@
</head>
<body class="iframe fullheight">
-<div id="messagepreviewheader">
+<div id="messageheader">
<h3 class="subject"><roundcube:object name="messageHeaders" valueOf="subject" /></h3>
-<a href="#details" id="previewheaderstoggle"><span class="iconlink"></span></a>
+<a href="#details" id="previewheaderstoggle"><span class="iconlink"></span><span id="headerstoggleall" class="iconlink allheaders"></a>
<div id="contactphoto"><roundcube:object name="contactphoto" /></div>
<table class="headers-table" id="preview-shortheaders"><tbody><tr>
@@ -25,6 +25,7 @@
</tr></tbody></table>
<roundcube:object name="messageHeaders" id="preview-allheaders" class="headers-table" addicon="/images/addcontact.png" exclude="subject,replyto" />
+<roundcube:object name="messageFullHeaders" no-switch="true" />
<!-- record navigation -->
<div id="countcontrols" class="pagenav">
diff --git a/skins/larry/ui.js b/skins/larry/ui.js
index b6056b6ee..e3b5eefe4 100644
--- a/skins/larry/ui.js
+++ b/skins/larry/ui.js
@@ -74,9 +74,8 @@ function rcube_mail_ui()
if (rcmail.env.action == 'show' || rcmail.env.action == 'preview') {
layout_messageview();
- rcmail.addEventListener('aftershow-headers', function() { layout_messageview(); });
- rcmail.addEventListener('afterhide-headers', function() { layout_messageview(); });
- $('#previewheaderstoggle').click(function(e){ toggle_preview_headers(this); return false });
+ $('#previewheaderstoggle').click(function(e){ toggle_preview_headers(this); return false; });
+ $('#headerstoggleall').click(function(e){ toggle_all_headers(this); return false; });
}
else if (rcmail.env.action == 'compose') {
rcmail.addEventListener('aftertoggle-editor', function(){ window.setTimeout(function(){ layout_composeview() }, 200); });
@@ -164,6 +163,12 @@ function rcube_mail_ui()
}
}
+ // set min-width to show all toolbar buttons
+ var screen = $('.minwidth');
+ if (screen.length) {
+ screen.css('min-width', $('.toolbar').width() + $('#quicksearchbar').parent().width() + 20);
+ }
+
// turn a group of fieldsets into tabs
$('.tabbed').each(function(idx, elem){ init_tabs(elem); })
@@ -254,11 +259,11 @@ function rcube_mail_ui()
*/
function resize()
{
- if (rcmail.env.task == 'mail' && (rcmail.env.action == 'show' || rcmail.env.action == 'preview')) {
- layout_messageview();
- }
- if (rcmail.env.task == 'mail' && rcmail.env.action == 'compose') {
- layout_composeview();
+ if (rcmail.env.task == 'mail') {
+ if (rcmail.env.action == 'show' || rcmail.env.action == 'preview')
+ layout_messageview();
+ else if (rcmail.env.action == 'compose')
+ layout_composeview();
}
// make iframe footer buttons float if scrolling is active
@@ -267,13 +272,13 @@ function rcube_mail_ui()
body = $(document.body),
floating = footer.hasClass('floating'),
overflow = body.outerHeight(true) > $(window).height();
+
if (overflow != floating) {
var action = overflow ? 'addClass' : 'removeClass';
footer[action]('floating');
body[action]('floatingbuttons');
}
- })
-
+ });
}
/**
@@ -315,7 +320,6 @@ function rcube_mail_ui()
*/
function layout_messageview()
{
- $('#messagecontent').css('top', ($('#messageheader').outerHeight() + 10) + 'px');
$('#message-objects div a').addClass('button');
if (!$('#attachment-list li').length) {
@@ -461,7 +465,7 @@ function rcube_mail_ui()
var button = $(e.target),
frame = $('#mailpreviewframe'),
visible = !frame.is(':visible'),
- splitter = mailviewsplit.pos || parseInt(bw.get_cookie('mailviewsplitter') || 320),
+ splitter = mailviewsplit.pos || parseInt(rcmail.get_cookie('mailviewsplitter') || 320),
topstyles, bottomstyles, uid;
frame.toggle();
@@ -508,13 +512,31 @@ function rcube_mail_ui()
{
$('#preview-shortheaders').toggle();
var full = $('#preview-allheaders').toggle(),
- button = $('a#previewheaderstoggle');
+ button = $('#previewheaderstoggle');
+
+ if (!$('#headerstoggleall').length)
+ $('#all-headers').toggle();
// add toggle button to full headers table
- if (full.is(':visible'))
- button.attr('href', '#hide').removeClass('add').addClass('remove')
- else
- button.attr('href', '#details').removeClass('remove').addClass('add')
+ if (full.is(':visible')) {
+ button.attr('href', '#hide').removeClass('add').addClass('remove');
+ }
+ else {
+ button.attr('href', '#details').removeClass('remove').addClass('add');
+ }
+ }
+
+
+ /**
+ * Show/hide all message headers
+ */
+ function toggle_all_headers(button)
+ {
+ rcmail.command('show-headers', '', button);
+ $(button).remove();
+ $('#previewheaderstoggle span').css({bottom: '5px'});
+
+ return false;
}
@@ -847,6 +869,8 @@ function rcube_mail_ui()
// Select/unselect tab
$('#tab'+idx).toggleClass('selected', idx==index);
});
+
+ resize();
}
/**
@@ -974,7 +998,7 @@ function rcube_splitter(p)
$(window).resize(onResize);
// read saved position from cookie
- var cookie = bw.get_cookie(this.id);
+ var cookie = rcmail.get_cookie(this.id);
if (cookie && !isNaN(cookie)) {
this.pos = parseFloat(cookie);
this.resize();
@@ -1135,7 +1159,7 @@ function rcube_splitter(p)
{
var exp = new Date();
exp.setYear(exp.getFullYear() + 1);
- bw.set_cookie(this.id, this.pos, exp);
+ rcmail.set_cookie(this.id, this.pos, exp);
};
} // end class rcube_splitter