From b4f7c665bbe31d4ddbdca8c9f89eedb1d6187582 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Tue, 26 May 2009 08:28:04 -0400
Subject: [PATCH] Tweak default skin with better icons (sprites) and move IE hacks to an external file included by conditional comments

---
 skins/default/common.css                      |    8 -
 skins/default/templates/editidentity.html     |    1 
 skins/default/templates/showcontact.html      |    1 
 skins/default/images/buttons/markread_act.png |    0 
 skins/default/mail.css                        |  111 ++++++++++-----------------
 skins/default/templates/addcontact.html       |    1 
 program/localization/de_CH/labels.inc         |    1 
 skins/default/images/buttons/actions_act.png  |    0 
 skins/default/templates/message.html          |    6 
 skins/default/images/messageactions.gif       |    0 
 skins/default/templates/editcontact.html      |    1 
 program/localization/de_DE/labels.inc         |    1 
 skins/default/images/buttons/actions_pas.png  |    0 
 skins/default/images/messageactions.png       |    0 
 skins/default/templates/importcontacts.html   |    1 
 skins/default/templates/mail.html             |    6 
 skins/default/images/buttons/inbox_pas.png    |    0 
 skins/default/images/buttons/settings.gif     |    0 
 skins/default/templates/addressbook.html      |    9 +-
 skins/default/images/buttons/mail.gif         |    0 
 skins/default/templates/managefolders.html    |    1 
 skins/default/includes/messagemenu.html       |   18 ++--
 skins/default/templates/messagepreview.html   |    4 
 skins/default/images/buttons/inbox_act.png    |    0 
 skins/default/templates/messagepart.html      |    1 
 skins/default/templates/plugin.html           |    1 
 /dev/null                                     |    0 
 skins/default/includes/links.html             |    7 +
 skins/default/settings.css                    |   16 ----
 program/localization/en_US/labels.inc         |    1 
 program/include/rcube_template.php            |    1 
 skins/default/functions.js                    |    7 -
 skins/default/images/buttons/inbox_sel.png    |    0 
 skins/default/templates/compose.html          |    1 
 skins/default/templates/identities.html       |    1 
 skins/default/templates/settings.html         |    1 
 skins/default/addresses.css                   |   16 ---
 37 files changed, 78 insertions(+), 145 deletions(-)

diff --git a/program/include/rcube_template.php b/program/include/rcube_template.php
index dc4b5e1..d8c2176 100755
--- a/program/include/rcube_template.php
+++ b/program/include/rcube_template.php
@@ -587,6 +587,7 @@
                     else {
                       $incl = file_get_contents($path);
                     }
+                    $incl = $this->parse_conditions($incl);
                     return $this->parse_xml($incl);
                 }
                 break;
diff --git a/program/localization/de_CH/labels.inc b/program/localization/de_CH/labels.inc
index 1cb4be6..5c0aa9d 100644
--- a/program/localization/de_CH/labels.inc
+++ b/program/localization/de_CH/labels.inc
@@ -117,6 +117,7 @@
 $labels['markunread'] = 'Als ungelesen';
 $labels['markflagged'] = 'Stern hinzufügen';
 $labels['markunflagged'] = 'Stern entfernen';
+$labels['messageactions']   = 'Weitere Aktionen...';
 $labels['select'] = 'Auswählen';
 $labels['all'] = 'Alle';
 $labels['none'] = 'Keine';
diff --git a/program/localization/de_DE/labels.inc b/program/localization/de_DE/labels.inc
index 7db1f39..53231a6 100644
--- a/program/localization/de_DE/labels.inc
+++ b/program/localization/de_DE/labels.inc
@@ -116,6 +116,7 @@
 $labels['markunread'] = 'Als ungelesen';
 $labels['markflagged'] = 'Stern hinzufügen';
 $labels['markunflagged'] = 'Stern entfernen';
+$labels['messageactions']   = 'Weitere Aktionen...';
 $labels['select'] = 'Auswählen';
 $labels['all'] = 'Alle';
 $labels['none'] = 'Keine';
diff --git a/program/localization/en_US/labels.inc b/program/localization/en_US/labels.inc
index 0ad6584..0e26fc6 100644
--- a/program/localization/en_US/labels.inc
+++ b/program/localization/en_US/labels.inc
@@ -142,6 +142,7 @@
 $labels['markunread']       = 'As unread';
 $labels['markflagged']      = 'As flagged';
 $labels['markunflagged']    = 'As unflagged';
+$labels['messageactions']   = 'More actions...';
 $labels['messagemenu']      = 'Message menu';
 
 $labels['select'] = 'Select';
diff --git a/skins/default/addresses.css b/skins/default/addresses.css
index 6f984e0..d864811 100644
--- a/skins/default/addresses.css
+++ b/skins/default/addresses.css
@@ -29,16 +29,13 @@
   color: #333333;
 }
 
-#mainscreen
+#addressscreen
 {
   position: absolute;
   top: 85px;
   right: 20px;
   bottom: 40px;
   left: 200px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-220)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-125)+'px');
 }
 
 #directorylist
@@ -51,8 +48,6 @@
   border: 1px solid #999999;
   background-color: #F9F9F9;
   overflow: hidden;
-  /* css hack for IE */
-  height: expression((parseInt(document.documentElement.clientHeight)-125)+'px');  
 }
 
 #addresslist
@@ -63,8 +58,6 @@
   border: 1px solid #999999;
   background-color: #F9F9F9;
   overflow: auto;
-  /* css hack for IE */
-  height: expression(parseInt(this.parentNode.offsetHeight)+'px');
 }
 
 #importbox
@@ -78,8 +71,6 @@
   background-color: #F9F9F9;
   padding-bottom: 4ex;
   overflow: auto;
-  /* css hack for IE */
-  height: expression((parseInt(document.documentElement.clientHeight)-135)+'px');  
 }
 
 #addresslist
@@ -139,8 +130,6 @@
 {
   width: 100%;
   table-layout: fixed;
-  /* css hack for IE */
-  width: expression(document.getElementById('addresslist').clientWidth);
 }
 
 
@@ -159,9 +148,6 @@
   bottom: 0px;
   border: 1px solid #999999;
   overflow: hidden;
-  /* css hack for IE */
-  height: expression(parseInt(this.parentNode.offsetHeight)+'px');
-  width: expression((parseInt(this.parentNode.offsetWidth)-555)+'px');
 }
 
 body.iframe,
diff --git a/skins/default/common.css b/skins/default/common.css
index c5e8133..2e16b01 100644
--- a/skins/default/common.css
+++ b/skins/default/common.css
@@ -85,11 +85,6 @@
   color: #333333;
   padding-left: 3px;
   padding-right: 3px;
-  /* IE hacks for input elements */
-  border-style: expression(this.type=='checkbox' || this.type=='radio' || this.id=='quicksearchbox' ? 'none' : 'solid');
-  border-width: expression(this.type=='checkbox' || this.type=='radio' ? '0' : '1px');
-  border-color: expression(this.type=='checkbox' || this.type=='radio' ? '' : '#666666');
-  background-color: expression(this.type=='checkbox' || this.type=='radio' ? 'transparent' : '#ffffff');
 }
 
 input.button
@@ -116,7 +111,6 @@
 
 img
 {
-  behavior: url('skins/default/pngbehavior.htc');
   border: 0;
 }
 
@@ -164,7 +158,7 @@
   font-size: 11px;
   color: #666666;
   text-decoration: none;
-  padding: 6px 16px 6px 25px;
+  padding: 6px 14px 6px 27px;
   background-repeat: no-repeat;
 }
 
diff --git a/skins/default/functions.js b/skins/default/functions.js
index 7425a1e..bc9a486 100644
--- a/skins/default/functions.js
+++ b/skins/default/functions.js
@@ -145,10 +145,9 @@
     show = this.messagemenu.is(':visible') ? false : true;
 
   var ref = rcube_find_object('messagemenulink');
-  if (show && ref) {
-    var pos = $(ref).offset();
-    this.messagemenu.css({ left:pos.left, top:(pos.top + ref.offsetHeight) });
-  }
+  if (show && ref)
+    this.messagemenu.css({ left:ref.offsetLeft, top:(ref.offsetTop + ref.offsetHeight) });
+
   this.messagemenu[show?'show':'hide']();
 },
 
diff --git a/skins/default/images/buttons/actions_act.png b/skins/default/images/buttons/actions_act.png
new file mode 100644
index 0000000..8a77776
--- /dev/null
+++ b/skins/default/images/buttons/actions_act.png
Binary files differ
diff --git a/skins/default/images/buttons/actions_pas.png b/skins/default/images/buttons/actions_pas.png
new file mode 100644
index 0000000..0780f6a
--- /dev/null
+++ b/skins/default/images/buttons/actions_pas.png
Binary files differ
diff --git a/skins/default/images/buttons/inbox_act.png b/skins/default/images/buttons/inbox_act.png
index 30c1e76..24d33a6 100644
--- a/skins/default/images/buttons/inbox_act.png
+++ b/skins/default/images/buttons/inbox_act.png
Binary files differ
diff --git a/skins/default/images/buttons/inbox_pas.png b/skins/default/images/buttons/inbox_pas.png
index 67f4da0..b65746a 100644
--- a/skins/default/images/buttons/inbox_pas.png
+++ b/skins/default/images/buttons/inbox_pas.png
Binary files differ
diff --git a/skins/default/images/buttons/inbox_sel.png b/skins/default/images/buttons/inbox_sel.png
index 89d661e..ce65ca7 100644
--- a/skins/default/images/buttons/inbox_sel.png
+++ b/skins/default/images/buttons/inbox_sel.png
Binary files differ
diff --git a/skins/default/images/buttons/mail.gif b/skins/default/images/buttons/mail.gif
index 8bb93f7..712735d 100644
--- a/skins/default/images/buttons/mail.gif
+++ b/skins/default/images/buttons/mail.gif
Binary files differ
diff --git a/skins/default/images/buttons/markread_act.png b/skins/default/images/buttons/markread_act.png
index 32c0511..284d68b 100644
--- a/skins/default/images/buttons/markread_act.png
+++ b/skins/default/images/buttons/markread_act.png
Binary files differ
diff --git a/skins/default/images/buttons/messagemenu.png b/skins/default/images/buttons/messagemenu.png
deleted file mode 100644
index d19ee95..0000000
--- a/skins/default/images/buttons/messagemenu.png
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/buttons/settings.gif b/skins/default/images/buttons/settings.gif
index a390cd9..9c609b7 100644
--- a/skins/default/images/buttons/settings.gif
+++ b/skins/default/images/buttons/settings.gif
Binary files differ
diff --git a/skins/default/images/buttons/settings.png b/skins/default/images/buttons/settings.png
deleted file mode 100644
index 41395bf..0000000
--- a/skins/default/images/buttons/settings.png
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/icons/print.png b/skins/default/images/icons/print.png
deleted file mode 100644
index dc9ab48..0000000
--- a/skins/default/images/icons/print.png
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/icons/save.png b/skins/default/images/icons/save.png
deleted file mode 100644
index aa9ea52..0000000
--- a/skins/default/images/icons/save.png
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/icons/source.png b/skins/default/images/icons/source.png
deleted file mode 100644
index 37dceea..0000000
--- a/skins/default/images/icons/source.png
+++ /dev/null
Binary files differ
diff --git a/skins/default/images/messageactions.gif b/skins/default/images/messageactions.gif
new file mode 100644
index 0000000..da981cb
--- /dev/null
+++ b/skins/default/images/messageactions.gif
Binary files differ
diff --git a/skins/default/images/messageactions.png b/skins/default/images/messageactions.png
new file mode 100644
index 0000000..3c9bce3
--- /dev/null
+++ b/skins/default/images/messageactions.png
Binary files differ
diff --git a/skins/default/includes/links.html b/skins/default/includes/links.html
index 30aeb4c..222027e 100644
--- a/skins/default/includes/links.html
+++ b/skins/default/includes/links.html
@@ -1,3 +1,8 @@
 <link rel="index" href="$__comm_path" />
 <link rel="shortcut icon" href="/images/favicon.ico"/>
-<link rel="stylesheet" type="text/css" href="/common.css" />
\ No newline at end of file
+<link rel="stylesheet" type="text/css" href="/common.css" />
+<roundcube:if condition="env:task != 'login'" />
+<link rel="stylesheet" type="text/css" href="/<roundcube:exp expression="env:task=='addressbook'?'addresses':env:task" />.css" />
+<roundcube:endif />
+<!--[if lte IE 7]><link rel="stylesheet" type="text/css" href="/iehacks.css" /><![endif]-->
+<!--[if lte IE 6]><link rel="stylesheet" type="text/css" href="/ie6hacks.css" /><![endif]-->
\ No newline at end of file
diff --git a/skins/default/includes/messagemenu.html b/skins/default/includes/messagemenu.html
index 13b984b..1725b6b 100644
--- a/skins/default/includes/messagemenu.html
+++ b/skins/default/includes/messagemenu.html
@@ -1,10 +1,12 @@
 <div id="messagemenu">
-    <ul class="toolbarmenu">
-	<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="sourcelink" command="viewsource" label="viewsource" classAct="sourcelink active" /></li>
-	<li><hr /></li>
-	<li><roundcube:button class="openlink" command="open" label="openinextwin" target="_blank" classAct="openlink active" /></li>
-	<roundcube:container name="messagemenu" id="messagemenu" />
-    </ul>
+  <ul class="toolbarmenu">
+    <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="sourcelink" command="viewsource" label="viewsource" classAct="sourcelink active" /></li>
+  <roundcube:if condition="env:action != 'show'" />
+    <li class="separator">&nbsp;</li>
+    <li><roundcube:button class="openlink" command="open" label="openinextwin" target="_blank" classAct="openlink active" /></li>
+  <roundcube:endif />
+    <roundcube:container name="messagemenu" id="messagemenu" />
+  </ul>
 </div>
diff --git a/skins/default/mail.css b/skins/default/mail.css
index e923794..a9c2d8d 100644
--- a/skins/default/mail.css
+++ b/skins/default/mail.css
@@ -10,8 +10,6 @@
   height: 35px;
   white-space: nowrap;
 /*  border: 1px solid #cccccc; */
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-400)+'px');
 }
 
 #messagetoolbar a
@@ -57,7 +55,6 @@
   border: 1px solid #CCC;
   padding: 1px;
   opacity: 0.9;
-  filter:alpha(opacity=90);
   z-index: 240;
 }
 
@@ -78,21 +75,22 @@
   font-size: 11px;
   white-space: nowrap;
   min-width: 130px;
-  width: auto !important;
-  width: 130px;
 }
 
 ul.toolbarmenu li a
 {
   display: block;
   color: #a0a0a0;
-  padding: 2px 8px 3px 12px;
+  padding: 2px 8px 3px 22px;
   text-decoration: none;
+  min-height: 14px;
 }
 
-ul.toolbarmenu li a.active:hover
+ul.toolbarmenu li a.active,
+ul.toolbarmenu li a.active:active,
+ul.toolbarmenu li a.active:visited
 {
-  background-color: #ddd;
+  color: #333;
 }
 
 ul.toolbarmenu li input
@@ -102,8 +100,10 @@
 
 ul.toolbarmenu li hr
 {
+  color: #ccc;
   width: 130px;
-  margin: 2px 8px 2px 22px;
+  height: 1px;
+  margin: 2px 1px 2px 1px;
 }
 
 ul.toolbarmenu li img
@@ -112,36 +112,45 @@
   margin: 0 2px;
 }
 
-#messagemenu ul.toolbarmenu a,
-#markmessagemenu ul.toolbarmenu a
+ul.toolbarmenu li.separator
 {
-  padding: 2px 8px 3px 22px;
+  height: 1px;
+  font-size: 1pt;
+  border-bottom: 1px solid #ccc;
+  margin: 1px 1px 2px 1px;
+  padding: 0;
 }
 
 #messagemenu li a.active:hover,
 #markmessagemenu li a.active:hover
 {
-  background-color: #ddd;
+  color: #fff;
+  background-color: #c00;
 }
 
-#messagemenu a.printlink
+#messagemenu li a
 {
-  background: url('images/icons/print.png') no-repeat 2px;
+  background: url('images/messageactions.png') no-repeat 1px 0;
 }
 
-#messagemenu a.downloadlink
+#messagemenu li a.printlink
 {
-  background: url('images/icons/save.png') no-repeat 2px;
+  background-position: 1px 1px;
 }
 
-#messagemenu a.openlink
+#messagemenu li a.downloadlink
 {
-  background: url('images/icons/extwin.png') no-repeat 2px;
+  background-position: 1px -17px;
 }
 
-#messagemenu a.sourcelink
+#messagemenu li a.sourcelink
 {
-  background: url('images/icons/source.png') no-repeat 2px;
+  background-position: 1px -35px;
+}
+
+#messagemenu li a.openlink
+{
+  background-position: 1px -53px;
 }
 
 #markmessagemenu a.readlink
@@ -197,9 +206,6 @@
 #mailboxcontrols a.active,
 #mailboxcontrols a.active:active,
 #mailboxcontrols a.active:visited,
-ul.toolbarmenu li a.active,
-ul.toolbarmenu li a.active:active,
-ul.toolbarmenu li a.active:visited,
 td.formlinks a,
 td.formlinks a:visited
 {
@@ -242,9 +248,6 @@
   right: 20px;
   bottom: 40px;
   left: 20px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-40)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-125)+'px');
 }
 
 #mailrightcontainer
@@ -254,11 +257,8 @@
   left: 170px;
   bottom: 0px;
   right: 0px;
-  /* css hack for IE */
-  width: expression((parseInt(this.parentNode.offsetWidth)-170)+'px');
-  height: expression(parseInt(this.parentNode.offsetHeight)+'px');
 }
-	  
+
 #messagepartcontainer
 {
   position: absolute;
@@ -266,9 +266,6 @@
   left: 20px;
   right: 20px;
   bottom: 20px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-40)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-100)+'px');
 }
 
 #mailcontframe
@@ -280,8 +277,6 @@
   border: 1px solid #999999;
   background-color: #F9F9F9;
   overflow: auto;
-  /* css hack for IE */
-  height: expression(parseInt(this.parentNode.offsetHeight)+'px');
 }
 
 #mailpreviewframe
@@ -292,8 +287,6 @@
   bottom: 0px;
   border: 1px solid #999999;
   background-color: #F9F9F9;
-  /* css hack for IE */
-  height: expression((parseInt(this.parentNode.offsetHeight)-205)+'px');
 }
 
 #messagecontframe
@@ -323,8 +316,6 @@
   left: 220px;
   right: 20px;
   height: 40px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-240)+'px');
 }
 
 #partheader table td
@@ -368,8 +359,6 @@
   border: 1px solid #999;
   background-color: #F9F9F9;
   overflow: auto;
-  /* css hack for IE */
-  height: expression(parseInt(this.parentNode.offsetHeight)+'px');
 }
 
 #mailboxlist
@@ -505,8 +494,6 @@
   right: 20px;
   bottom: 18px;
   height: 20px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-40)+'px');
 }
 
 #mailfooter table tr td
@@ -538,8 +525,6 @@
   width: 100%;
   display: table;
   table-layout: fixed;
-  /* css hack for IE */
-  width: expression('auto');
 }
 
 #messagelist thead tr td
@@ -746,15 +731,6 @@
   border: 1px solid #999;
   background-color: #FFF;
   overflow: auto;
-  /* css hack for IE */
-  width: expression((parseInt(this.parentNode.offsetWidth)-170)+'px');
-  height: expression((parseInt(this.parentNode.offsetHeight))+'px');
-}
-
-#messagecanvas 
-{
-  /* css hack for IE */
-  width: expression((parseInt(this.parentNode.offsetWidth)-20)+'px');
 }
 
 #printmessageframe
@@ -767,9 +743,6 @@
   border: 1px solid #999;
   background-color: #FFF;
   overflow: auto;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-220)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-125)+'px');
 }
 
 div.messageheaderbox
@@ -838,8 +811,6 @@
   list-style-image: none;
   list-style-type: none;
   background: url(images/icons/attachment.png) 60px 2px no-repeat #DFDFDF;
-  /* IE6 hack */    
-  _height: expression(Math.min(16, parseInt(document.documentElement.clientHeight))+'px');
 }
 
 #attachment-list:after
@@ -934,12 +905,6 @@
   border-right: 2px solid #bb0000;
 }
 
-body.iframe 
-{
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth))+'px');
-}
-
 body.iframe div.message-htmlpart
 {
   margin: 8px;
@@ -969,6 +934,16 @@
   color: #333333;
 }
 
+#messageviewlink
+{
+  position: absolute;
+  top: 8px;
+  right: 10px;
+  width: 15px;
+  height: 15px;
+  border: 0;
+}
+
 /** message compose styles */
 
 #compose-toolbar
@@ -991,9 +966,6 @@
   right: 25px;
   bottom: 30px;
   margin: 0px;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-210)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-120)+'px');
 }
 
 #spellcheck-control
@@ -1043,7 +1015,6 @@
 #compose-headers td input
 {
   width: 100%;
-  width: expression('99%');
 }
 
 #compose-headers td textarea
diff --git a/skins/default/settings.css b/skins/default/settings.css
index 26b4f2c..f0024fc 100644
--- a/skins/default/settings.css
+++ b/skins/default/settings.css
@@ -10,8 +10,6 @@
   height: 22px;
   border-bottom: 1px solid #999999;
   white-space: nowrap;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-240)+'px');
 }
 
 span.tablink,
@@ -53,9 +51,6 @@
   right: 20px;
   overflow: auto;
   border: 1px solid #999999;
-  /* css hack for IE */
-  height: expression((parseInt(document.documentElement.clientHeight)-155)+'px');
-  width: expression((parseInt(document.documentElement.clientWidth)-40)+'px');
 }
 
 #userprefs-box table td.title
@@ -75,8 +70,6 @@
   float: left;
   margin-right: 14px;
   min-width: 520px;
-  /* css hack for IE */
-  width: expression(Math.min(520, parseInt(document.documentElement.clientWidth))+'px');
 }
 
 #rcmfd_timezone
@@ -99,8 +92,6 @@
   bottom: 140px;
   overflow: auto;
   border: 1px solid #999999;
-  /* css hack for IE */
-  height: expression((parseInt(document.documentElement.clientHeight)-235)+'px');
 }
 
 #folder-manager.droptarget
@@ -114,8 +105,6 @@
   bottom: 60px;
   width: 420px;
   border: 1px solid #999999;
-  /* css hack for IE */
-  height: expression((parseInt(document.documentElement.clientHeight)-155)+'px');
 }
 
 #listbuttons
@@ -135,8 +124,6 @@
 #subscription-table
 {
   width: 100%;
-  /* css hack for IE */
-  width: expression('auto');
 }
 
 #subscription-table input
@@ -223,9 +210,6 @@
   bottom: 60px;
   border: 1px solid #999999;
   overflow: auto;
-  /* css hack for IE */
-  width: expression((parseInt(document.documentElement.clientWidth)-470)+'px');
-  height: expression((parseInt(document.documentElement.clientHeight)-155)+'px');
 }
 
 #identity-details table td.title
diff --git a/skins/default/templates/addcontact.html b/skins/default/templates/addcontact.html
index 38151c9..3b18ec5 100644
--- a/skins/default/templates/addcontact.html
+++ b/skins/default/templates/addcontact.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/addresses.css" />
 </head>
 <body class="iframe">
 
diff --git a/skins/default/templates/addressbook.html b/skins/default/templates/addressbook.html
index 7e8edef..2dc92e0 100644
--- a/skins/default/templates/addressbook.html
+++ b/skins/default/templates/addressbook.html
@@ -3,25 +3,24 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/addresses.css" />
 <script type="text/javascript" src="/splitter.js"></script>
 
 <style type="text/css">
 <roundcube:if condition="count(env:address_sources) &lt;= 1" />
 #abookcountbar { left: 20px;}
-#mainscreen { left:20px; /* IE hack */ width:expression((parseInt(document.documentElement.clientWidth)-40)+'px') }
+#addressscreen { left:20px; /* IE hack */ width:expression((parseInt(document.documentElement.clientWidth)-40)+'px') }
 #addresslist { width: <roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter-5 : 245" />px; }
 #contacts-box {
     left: <roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />px;
     /* IE hack */
-    width:expression((parseInt(mainscreen.offsetWidth)-<roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />)+'px')
+    width:expression((parseInt(addressscreen.offsetWidth)-<roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />)+'px')
 }
 <roundcube:else />
 #addresslist { width: <roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter-5 : 245" />px; }
 #contacts-box {
     left: <roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />px;
     /* IE hack */
-    width:expression((parseInt(mainscreen.offsetWidth)-<roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />)+'px')
+    width:expression((parseInt(addressscreen.offsetWidth)-<roundcube:exp expression="!empty(cookie:addressviewsplitter) ? cookie:addressviewsplitter+5 : 255" />)+'px')
 }
 <roundcube:endif />
 </style>
@@ -53,7 +52,7 @@
 </div>
 <roundcube:endif />
 
-<div id="mainscreen">
+<div id="addressscreen">
 
 <div id="addresslist">
 <roundcube:object name="addresslist" id="contacts-table" class="records-table" cellspacing="0" summary="Contacts list" />
diff --git a/skins/default/templates/compose.html b/skins/default/templates/compose.html
index 99a4185..d5abd47 100644
--- a/skins/default/templates/compose.html
+++ b/skins/default/templates/compose.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="productname" /> :: <roundcube:label name="compose" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/mail.css" />
 <link rel="stylesheet" type="text/css" href="/googiespell.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
diff --git a/skins/default/templates/editcontact.html b/skins/default/templates/editcontact.html
index 6cef903..1fc1237 100644
--- a/skins/default/templates/editcontact.html
+++ b/skins/default/templates/editcontact.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/addresses.css" />
 </head>
 <body class="iframe">
 
diff --git a/skins/default/templates/editidentity.html b/skins/default/templates/editidentity.html
index 4d15bde..deff979 100644
--- a/skins/default/templates/editidentity.html
+++ b/skins/default/templates/editidentity.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
 <body>
diff --git a/skins/default/templates/identities.html b/skins/default/templates/identities.html
index 30d33a3..f67d34b 100644
--- a/skins/default/templates/identities.html
+++ b/skins/default/templates/identities.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
 <body>
diff --git a/skins/default/templates/importcontacts.html b/skins/default/templates/importcontacts.html
index 35a8e41..b005d35 100644
--- a/skins/default/templates/importcontacts.html
+++ b/skins/default/templates/importcontacts.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/addresses.css" />
 </head>
 <body>
 
diff --git a/skins/default/templates/mail.html b/skins/default/templates/mail.html
index 93d4e4d..d3d8e23 100644
--- a/skins/default/templates/mail.html
+++ b/skins/default/templates/mail.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/mail.css" />
 <script type="text/javascript" src="/splitter.js"></script>
 <script type="text/javascript" src="/functions.js"></script>
 <style type="text/css">
@@ -27,7 +26,6 @@
 
 <roundcube:include file="/includes/taskbar.html" />
 <roundcube:include file="/includes/header.html" />
-<roundcube:include file="/includes/messagemenu.html" />
 
 <div id="mainscreen">
 
@@ -118,8 +116,8 @@
 <roundcube:button command="reply-all" imageSel="/images/buttons/replyall_sel.png" imageAct="/images/buttons/replyall_act.png" imagePas="/images/buttons/replyall_pas.png" width="32" height="32" title="replytoallmessage" />
 <roundcube:button command="forward" imageSel="/images/buttons/forward_sel.png" imageAct="/images/buttons/forward_act.png" imagePas="/images/buttons/forward_pas.png" width="32" height="32" title="forwardmessage" />
 <roundcube:button command="delete" imageSel="/images/buttons/delete_sel.png" imageAct="/images/buttons/delete_act.png" imagePas="/images/buttons/delete_pas.png" width="32" height="32" title="deletemessage" />
-<roundcube:button name="messagemenulink" id="messagemenulink" image="/images/buttons/messagemenu.png" width="32" height="32" title="messagemenu" onclick="rcmail_ui.show_messagemenu();return false" />
 <roundcube:button name="markreadbutton" id="markreadbutton" image="/images/buttons/markread_act.png" width="32" height="32" title="markmessages" onclick="rcmail_ui.show_markmenu();return false" />
+<roundcube:button name="messagemenulink" id="messagemenulink" image="/images/buttons/actions_act.png" width="34" height="32" title="messageactions" onclick="rcmail_ui.show_messagemenu();return false" />
 <roundcube:container name="toolbar" id="messagetoolbar" />
 
 <div id="markmessagemenu">
@@ -132,6 +130,8 @@
   </ul>
 </div>
 
+<roundcube:include file="/includes/messagemenu.html" />
+
 <div id="searchfilter">
   <label for="rcmlistfilter"><roundcube:label name="filter" /></label>:
   <roundcube:object name="searchfilter" class="searchfilter" />
diff --git a/skins/default/templates/managefolders.html b/skins/default/templates/managefolders.html
index 925bc2c..a19a742 100644
--- a/skins/default/templates/managefolders.html
+++ b/skins/default/templates/managefolders.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
 <body>
diff --git a/skins/default/templates/message.html b/skins/default/templates/message.html
index eb44990..3d15550 100644
--- a/skins/default/templates/message.html
+++ b/skins/default/templates/message.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/mail.css" />
 <script type="text/javascript" src="/splitter.js"></script>
 <script type="text/javascript" src="/functions.js"></script>
 <style type="text/css">
@@ -18,7 +17,6 @@
 
 <roundcube:include file="/includes/taskbar.html" />
 <roundcube:include file="/includes/header.html" />
-<roundcube:include file="/includes/messagemenu.html" />
 
 <div id="messagecountbar">
 <roundcube:button command="firstmessage" imageSel="/images/buttons/first_sel.png" imageAct="/images/buttons/first_act.png" imagePas="/images/buttons/first_pas.png" width="11" height="11" title="firstmessage" />
@@ -35,9 +33,11 @@
 <roundcube:button command="reply-all" imageSel="/images/buttons/replyall_sel.png" imageAct="/images/buttons/replyall_act.png" imagePas="/images/buttons/replyall_pas.png" width="32" height="32" title="replytoallmessage" />
 <roundcube:button command="forward" imageSel="/images/buttons/forward_sel.png" imageAct="/images/buttons/forward_act.png" imagePas="/images/buttons/forward_pas.png" width="32" height="32" title="forwardmessage" />
 <roundcube:button command="delete" imageSel="/images/buttons/delete_sel.png" imageAct="/images/buttons/delete_act.png" imagePas="/images/buttons/delete_pas.png" width="32" height="32" title="deletemessage" />
-<roundcube:button name="messagemenulink" image="/images/buttons/messagemenu.png" width="32" height="32" title="messagemenu" onclick="rcmail_ui.show_messagemenu();return false" id="messagemenulink" />
+<roundcube:button name="messagemenulink" image="/images/buttons/actions_act.png" width="34" height="32" title="messageactions" onclick="rcmail_ui.show_messagemenu();return false" id="messagemenulink" />
 <roundcube:container name="toolbar" id="messagetoolbar" />
 <roundcube:object name="mailboxlist" type="select" noSelection="moveto" maxlength="25" onchange="rcmail.command('moveto', this.options[this.selectedIndex].value)" class="mboxlist" />
+
+<roundcube:include file="/includes/messagemenu.html" />
 </div>
 
 <div id="mainscreen">
diff --git a/skins/default/templates/messagepart.html b/skins/default/templates/messagepart.html
index c524b7f..ce7dbe2 100644
--- a/skins/default/templates/messagepart.html
+++ b/skins/default/templates/messagepart.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/mail.css" />
 </head>
 <body class="extwin">
 
diff --git a/skins/default/templates/messagepreview.html b/skins/default/templates/messagepreview.html
index e08f2c7..69ed4cf 100644
--- a/skins/default/templates/messagepreview.html
+++ b/skins/default/templates/messagepreview.html
@@ -2,12 +2,12 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title><roundcube:object name="pagetitle" /></title>
-<link rel="stylesheet" type="text/css" href="/common.css" />
-<link rel="stylesheet" type="text/css" href="/mail.css" />
+<roundcube:include file="/includes/links.html" />
 </head>
 <body class="iframe">
 
 <div class="messageheaderbox">
+<roundcube:button command="permaurl" image="/images/icons/extwin.png" width="15" height="15" title="openinextwin" id="messageviewlink" target="_blank" />
 <roundcube:object name="messageHeaders" class="headers-table" cellspacing="0" cellpadding="2" addicon="/images/icons/plus.gif" summary="Message headers" />
 <roundcube:object name="messageAttachments" id="attachment-list" />
 </div>
diff --git a/skins/default/templates/plugin.html b/skins/default/templates/plugin.html
index 9725fe4..03f0203 100644
--- a/skins/default/templates/plugin.html
+++ b/skins/default/templates/plugin.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/<roundcube:var name='env:task'/>.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
 <body>
diff --git a/skins/default/templates/settings.html b/skins/default/templates/settings.html
index 0abe7fa..b2a3c15 100644
--- a/skins/default/templates/settings.html
+++ b/skins/default/templates/settings.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/settings.css" />
 <script type="text/javascript" src="/functions.js"></script>
 </head>
 <body>
diff --git a/skins/default/templates/showcontact.html b/skins/default/templates/showcontact.html
index 7930457..e50c603 100644
--- a/skins/default/templates/showcontact.html
+++ b/skins/default/templates/showcontact.html
@@ -3,7 +3,6 @@
 <head>
 <title><roundcube:object name="pagetitle" /></title>
 <roundcube:include file="/includes/links.html" />
-<link rel="stylesheet" type="text/css" href="/addresses.css" />
 </head>
 <body class="iframe">
 

--
Gitblit v1.9.1