Index: themes/bartik/css/style-rtl.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/css/style-rtl.css,v
retrieving revision 1.6
diff -u -r1.6 style-rtl.css
--- themes/bartik/css/style-rtl.css	2 Sep 2010 20:43:18 -0000	1.6
+++ themes/bartik/css/style-rtl.css	7 Sep 2010 20:38:07 -0000
@@ -33,49 +33,31 @@
 
 /* ------------------ Header ------------------ */
 
-#header #logo {
+#logo {
   float: right;
   padding: 15px 0 15px 30px;
 }
-/* Menus when in the header region. */
-#header div.block-menu,
-#header div#block-system-main-menu {
-  float: right;
-}
-#header .block-menu li a,
-#header #block-system-main-menu li a {
-  float: right;
-  border-left: 1px solid #555;
-  border-right: none;
-}
-#header .block-menu li.first a,
-#header #block-system-main-menu li.first a {
-  padding-right: 0;
-  padding-left: 12px;
-}
-#header .block-menu li.last a,
-#header #block-system-main-menu li.last a {
-  padding-left: 0;
-  padding-right: 12px;
-  border-left: none;
-}
-#header #block-search-form {
+.region-header #block-search-form {
   float: left;
 }
-#header #block-user-login {
+.region-header #block-user-login {
   left: 2%;
   right: auto;
   float: left;
 }
-#header #block-user-login .form-text {
+.region-header #block-user-login .form-text {
   margin-left: 5px;
+  margin-right: 0;
 }
-#header #block-user-login .item-list ul li {
+.region-header #block-user-login .item-list ul li {
   margin: 0 15px 0 5px;
 }
-#header #block-user-login .userbox {
+.region-header #block-user-login .userbox {
   margin-right: 10px;
 }
+.region-header #block-search-form #edit-actions {
+  float: left;
+}
 
 /* --------------- Main Navigation ------------ */
 
Index: themes/bartik/css/layout-rtl.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/css/layout-rtl.css,v
retrieving revision 1.2
diff -u -r1.2 layout-rtl.css
--- themes/bartik/css/layout-rtl.css	22 Aug 2010 13:57:02 -0000	1.2
+++ themes/bartik/css/layout-rtl.css	7 Sep 2010 20:38:07 -0000
@@ -2,6 +2,7 @@
 
 /* ---------- Basic Layout RTL Styles ----------- */
 
+#logo-name-slogan,
 #content,
 .sidebar,
 .region-triptych-first,
@@ -13,3 +14,6 @@
 .region-footer-fourthcolumn {
   float: right;
 }
+.region-header {
+  float: left;
+}
Index: themes/bartik/css/layout.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/css/layout.css,v
retrieving revision 1.2
diff -u -r1.2 layout.css
--- themes/bartik/css/layout.css	22 Aug 2010 13:57:02 -0000	1.2
+++ themes/bartik/css/layout.css	7 Sep 2010 20:38:07 -0000
@@ -14,6 +14,28 @@
   margin-left: auto;
   margin-right: auto;
 }
+.no-region-header #logo-name-slogan,
+.no-site-info .region-header {
+  width: 960px;
+}
+.with-region-header #logo-name-slogan,
+.with-site-info .region-header {
+  width: 480px;
+}
+#logo-name-slogan {
+  float: left;
+}
+.region-header {
+  float: right;
+  margin-top: 38px;
+}
+.region-header .block {
+  clear: both;
+  margin: 0 15px 20px;
+}
+.region-header .block .content {
+  margin: 0;
+}
 #content,
 .sidebar,
 .region-triptych-first,
Index: themes/bartik/css/style.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/css/style.css,v
retrieving revision 1.7
diff -u -r1.7 style.css
--- themes/bartik/css/style.css	2 Sep 2010 20:43:18 -0000	1.7
+++ themes/bartik/css/style.css	7 Sep 2010 20:38:07 -0000
@@ -237,142 +237,108 @@
   position: static;
   width: auto;
 }
-#header,
-#preview #preview-header {
-  color: #fff;
-}
-#header a,
+#preview #preview-header,
 #preview #preview-header a {
   color: #fff;
 }
-#header a:hover,
-#header a:focus {
-  color: #b5b7b9;
-}
-#header a:active {
-  color: #adb0bf;
-}
-#header #logo,
+#logo,
 #preview #preview-header #preview-logo {
   float: left; /* LTR */
   padding: 15px 30px 15px 0; /* LTR */
 }
-#header #name-and-slogan,
+#name-and-slogan,
 #preview #preview-header #preview-name-and-slogan {
   padding-top: 38px;
   margin-bottom: 30px;
   margin-left: 15px;
 }
-#header #site-name,
+#site-name,
 #preview #preview-header #preview-site-name {
   font-size: 200%;
   color: #686868;
 }
-#header h1#site-name,
+h1#site-name,
 #preview #preview-header h1#preview-site-name {
   margin: 0;
 }
-#header #site-name a,
+#site-name a,
 #preview-header #preview-site-name a {
   font-weight: normal;
 }
-#header #site-slogan {
+#site-slogan {
   margin-top: 7px;
   font-size: 100%;
   word-spacing: 0.1em;
   font-style: italic;
 }
-/* Menus when in the header region. */
-#header .block-menu {
-  height: 1.1em;
-  margin: 10px 0;
-  font-size: 120%;
-  float: left; /* LTR */
-  width: 75%;
-}
-#header .block ul, /* Any menu block in the header region. */
-#header .block li {
-  list-style: none;
+/* Header region. */
+.region-header .block h2 {
   margin: 0;
-  padding: 0;
 }
-#header .block-menu li a {
-  float: left; /* LTR */
-  padding: 0 12px;
-  display: block;
-  border-right: 1px solid #555; /* LTR */
-}
-#header .block-menu li.first a {
-  padding-left: 0; /* LTR */
-}
-#header .block-menu li.last a {
-  padding-right: 0; /* LTR */
-  border-right: none; /* LTR */
+.region-header a:hover,
+.region-header a:focus {
+  text-decoration: underline;
 }
-#header #block-search-form { /* Search block in the Header region. */
+/* Search block in the Header region. */
+.region-header #block-search-form {
+  width: 240px;
   float: right; /* LTR */
-  width: 24%;
-  margin: 8px 0;
 }
-#header #block-user-login { /* Login block in the Header region. */
+.region-header #block-search-form .form-item-search-block-form input {
+  width: 77%;
+}
+/* Login block in the Header region. */
+.region-header #block-user-login {
   display: block;
-  position: absolute;
-  top: 0;
-  right: 2%; /* LTR */
-  background: #464748;
   color: #fff;
-  float: right; /* LTR */
-  font-size: 13px;
-  padding: 4px 10px 5px;
   text-transform: uppercase;
   font-size: 80%;
+  width: 450px;
 }
-#header #block-user-login a {
+.region-header #block-user-login a {
   color: #fff;
   font-size: 90%;
 }
-#header #block-user-login .form-item label {
+.region-header #block-user-login label {
   display: inline;
   font-weight: normal;
 }
-#header #block-user-login .form-item {
+.region-header #block-user-login .form-item {
   display: inline;
   font-weight: normal;
 }
-#header #block-user-login .form-text {
+.region-header #block-user-login .form-text {
   margin-right: 5px; /* LTR */
+  width: 110px;
 }
-#header #block-user-login .form-item label .form-required {
+.region-header #block-user-login .form-required {
   display: none;
 }
-#header #block-user-login div.item-list,
-#header #block-user-login .item-list ul {
-  display: inline;
+.region-header #block-user-login .userbox {
+  margin-left: 10px; /* LTR */
 }
-#header #block-user-login .item-list ul li {
+.region-header #block-user-login .form-actions {
+  padding-top: 0;
   display: inline;
-  margin: 0 5px 0 15px; /* LTR */
 }
-#header #block-user-login div.item-list {
-  margin-top: 5px;
-  font-style: italic;
-  font-size: 130%;
-  text-transform: none;
-}
-#header #block-user-login .userbox {
-  margin-left: 10px; /* LTR */
-}
-#header #block-user-login input.form-submit {
-  color: #fff;
-  background: #929599;
-  border: 1px solid #73767c;
-  padding: 1px;
+.region-header #block-user-login input.form-submit {
+  background: rgba(255, 255, 255, 0.7);
+  color: #333;
+  text-shadow: 0 1px #eee;
+  padding: 3px 7px;
+  border: none;
   text-transform: uppercase;
   margin-top: 1px;
   position: relative;
   display: inline;
+  font-size: 110%;
+  -khtml-border-radius: 12px;
+  -moz-border-radius: 12px;
+  -webkit-border-radius: 12px;
+  border-radius: 12px;
 }
-#header #block-user-login #user-login-form div.item-list { /* Hide create new account + email replacement password links. */
+/* Hide create new account and email replacement password links. */
+.region-header #user-login-form .item-list {
   display: none;
 }
 
Index: themes/bartik/css/colors.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/css/colors.css,v
retrieving revision 1.3
diff -u -r1.3 colors.css
--- themes/bartik/css/colors.css	22 Aug 2010 13:58:29 -0000	1.3
+++ themes/bartik/css/colors.css	7 Sep 2010 20:38:07 -0000
@@ -45,6 +45,8 @@
   background: #292929;
 }
 #header #name-and-slogan,
-#header #name-and-slogan a {
+#header #name-and-slogan a,
+#header .region-header,
+#header .region-header a {
   color: #fffeff;
 }
Index: themes/bartik/templates/page.tpl.php
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/templates/page.tpl.php,v
retrieving revision 1.4
diff -u -r1.4 page.tpl.php
--- themes/bartik/templates/page.tpl.php	22 Aug 2010 13:57:02 -0000	1.4
+++ themes/bartik/templates/page.tpl.php	7 Sep 2010 20:38:07 -0000
@@ -87,38 +87,38 @@
 ?>
 <div id="page-wrapper"><div id="page">
 
-  <div id="header"><div class="section clearfix">
+  <div id="header"><div class="section clearfix <?php print $header_classes?>">
 
-    <?php if ($logo): ?>
-      <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home" id="logo">
-        <img src="<?php print $logo; ?>" alt="<?php print t('Home'); ?>" />
-      </a>
-    <?php endif; ?>
+    <?php if ($logo || $site_name || $site_slogan): ?>
+      <div id="logo-name-slogan">
+
+        <?php if ($logo): ?>
+          <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home" id="logo">
+            <img src="<?php print $logo; ?>" alt="<?php print t('Home'); ?>" />
+          </a>
+        <?php endif; ?>
 
-    <?php if ($site_name || $site_slogan): ?>
-      <div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>
+        <div id="name-and-slogan"<?php print $hide['site_info']; ?>>
 
-        <?php if ($site_name): ?>
           <?php if ($title): ?>
-            <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
+            <div id="site-name"<?php print $hide['site_name']; ?>>
               <strong>
-                <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+                <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><?php print $site_name; ?></a>
               </strong>
             </div>
           <?php else: /* Use h1 when the content title is empty */ ?>
-            <h1 id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
-              <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+            <h1 id="site-name"<?php print $hide['site_name']; ?>>
+              <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><?php print $site_name; ?></a>
             </h1>
           <?php endif; ?>
-        <?php endif; ?>
 
-        <?php if ($site_slogan): ?>
-          <div id="site-slogan"<?php if ($hide_site_slogan) { print ' class="element-invisible"'; } ?>>
+          <div id="site-slogan"<?php print $hide['site_slogan']; ?>>
             <?php print $site_slogan; ?>
           </div>
-        <?php endif; ?>
 
-      </div> <!-- /#name-and-slogan -->
+        </div> <!-- /#name-and-slogan -->
+
+      </div> <!-- /#logo-name-slogan -->
     <?php endif; ?>
 
     <?php print render($page['header']); ?>
Index: themes/bartik/template.php
===================================================================
RCS file: /cvs/drupal/drupal/themes/bartik/template.php,v
retrieving revision 1.5
diff -u -r1.5 template.php
--- themes/bartik/template.php	1 Sep 2010 02:13:58 -0000	1.5
+++ themes/bartik/template.php	7 Sep 2010 20:38:06 -0000
@@ -45,18 +45,41 @@
   if (module_exists('color')) {
     _color_page_alter($variables);
   }
-  // Always print the site name and slogan, but if they are toggled off, we'll
-  // just hide them visually.
-  $variables['hide_site_name']   = theme_get_setting('toggle_name') ? FALSE : TRUE;
-  $variables['hide_site_slogan'] = theme_get_setting('toggle_slogan') ? FALSE : TRUE;
-  if ($variables['hide_site_name']) {
-    // If toggle_name is FALSE, the site_name will be empty, so we rebuild it.
+  // Always print the site name and slogan, but hide them if they are toggled off.
+  $hide_site_name = theme_get_setting('toggle_name') ? FALSE : TRUE;
+  $hide_site_slogan = theme_get_setting('toggle_slogan') ? FALSE : TRUE;
+  if ($hide_site_name) {
+    // If hide_site_name is FALSE the site_name will be empty so we rebuild it.
     $variables['site_name'] = filter_xss_admin(variable_get('site_name', 'Drupal'));
+    $variables['hide']['site_name'] = ' class="element-invisible"';
   }
-  if ($variables['hide_site_slogan']) {
-    // If toggle_site_slogan is FALSE, the site_slogan will be empty, so we rebuild it.
+  else {
+    $variables['hide']['site_name'] = FALSE;
+  }
+  if ($hide_site_slogan) {
+    // If hide_site_slogan is FALSE the site_slogan will be empty so we rebuild it.
     $variables['site_slogan'] = filter_xss_admin(variable_get('site_slogan', ''));
+    $variables['hide']['site_slogan'] = ' class="element-invisible"';
+  }
+  else {
+    $variables['hide']['site_slogan'] = FALSE;
+  }
+  if ($hide_site_name && $hide_site_slogan) {
+    $variables['hide']['site_info'] = ' class="element-invisible"';
+  }
+  else {
+    $variables['hide']['site_info'] = FALSE;
   }
+  $header_classes = array();
+  if (!$variables['hide']['site_info'] || $variables['logo']) {
+    $header_classes[] = 'with-site-info';
+  }
+  else {
+    $header_classes[] = 'no-site-info';
+  }
+  $header_classes[] = $variables['page']['header'] ? 'with-region-header' : 'no-region-header';
+  $variables['header_classes'] = implode(' ', $header_classes);
+
   // Since the title and the shortcut link are both block level elements,
   // positioning them next to each other is much simpler with a wrapper div.
   if (!empty($variables['title_suffix']['add_or_remove_shortcut']) && $variables['title']) {
@@ -103,9 +126,8 @@
  * Override or insert variables into the block template.
  */
 function bartik_preprocess_block(&$variables) {
-  // In the header region, visually hide the title of any menu block or of the
-  // user login block, but leave it accessible.
-  if ($variables['block']->region == 'header' && ($variables['block']->module == 'user' && $variables['block']->delta == 'login' || in_array('block-menu', $variables['classes_array']))) {
+  // Hide the user login block title when in the header region.
+  if ($variables['block']->region == 'header' && ($variables['block']->module == 'user' && $variables['block']->delta == 'login')) {
     $variables['title_attributes_array']['class'][] = 'element-invisible';
   }
 }
