Index: modules/node/node.module =================================================================== RCS file: /cvs/drupal/drupal/modules/node/node.module,v retrieving revision 1.1099 diff -u -p -r1.1099 node.module --- modules/node/node.module 14 Aug 2009 13:53:01 -0000 1.1099 +++ modules/node/node.module 17 Aug 2009 11:08:53 -0000 @@ -1643,6 +1643,7 @@ function _node_add_access() { function node_menu() { $items['admin/content'] = array( 'title' => 'Content', + 'description' => 'Find and manage content and comments.', 'page callback' => 'drupal_get_form', 'page arguments' => array('node_admin_content'), 'access arguments' => array('administer nodes'), Index: modules/system/system.admin.inc =================================================================== RCS file: /cvs/drupal/drupal/modules/system/system.admin.inc,v retrieving revision 1.179 diff -u -p -r1.179 system.admin.inc --- modules/system/system.admin.inc 16 Aug 2009 23:20:43 -0000 1.179 +++ modules/system/system.admin.inc 17 Aug 2009 11:08:53 -0000 @@ -40,11 +40,25 @@ function system_main_admin_page($arg = N } $block = $item; $block['content'] = ''; + $block['show'] = FALSE; if ($item['block_callback'] && function_exists($item['block_callback'])) { $function = $item['block_callback']; $block['content'] .= $function(); } - $block['content'] .= theme('admin_block_content', system_admin_menu_block($item)); + $content = system_admin_menu_block($item); + if ((isset($item['page_callback']) && !in_array($item['page_callback'], array('system_admin_menu_block_page', 'system_admin_config_page', 'system_settings_overview'))) || count($content)) { + // Only show blocks for items which are not containers, or those which + // are containers and do have items we can show. + $block['show'] = TRUE; + if (empty($content)) { + // If no items found below, but access checks did not fail, show. + $block['title'] = l($item['title'], $item['href'], $item['localized_options']); + } + else { + // Theme items below. + $block['content'] .= theme('admin_block_content', $content); + } + } // Prepare for sorting as in function _menu_tree_check_access(). // The weight is offset so it is always positive, with a uniform 5-digits. $blocks[(50000 + $item['weight']) . ' ' . $item['title'] . ' ' . $item['mlid']] = $block; @@ -86,6 +100,7 @@ function system_admin_config_page() { } $block = $item; $block['content'] = ''; + $block['show'] = TRUE; if ($item['block_callback'] && function_exists($item['block_callback'])) { $function = $item['block_callback']; $block['content'] .= $function(); @@ -1914,20 +1929,34 @@ function system_batch_page() { */ function theme_admin_block($block) { // Don't display the block if it has no content to display. - if (empty($block['content'])) { + if (!$block['show']) { return ''; } - $output = <<< EOT -
-

- $block[title] -

-
- $block[content] + if (empty($block['content'])) { + $output = <<< EOT +
+

+ $block[title] +

+
+ $block[description] +
+
+EOT; + } + else { + $output = <<< EOT +
+

+ $block[title] +

+
+ $block[content] +
-
EOT; + } return $output; } Index: modules/system/system.module =================================================================== RCS file: /cvs/drupal/drupal/modules/system/system.module,v retrieving revision 1.749 diff -u -p -r1.749 system.module --- modules/system/system.module 17 Aug 2009 07:12:16 -0000 1.749 +++ modules/system/system.module 17 Aug 2009 11:08:53 -0000 @@ -537,6 +537,7 @@ function system_menu() { // Appearance. $items['admin/appearance'] = array( 'title' => 'Appearance', + 'description' => 'Select and configure your site theme.', 'page callback' => 'drupal_get_form', 'page arguments' => array('system_themes_form'), 'access arguments' => array('administer site configuration'), Index: modules/user/user.module =================================================================== RCS file: /cvs/drupal/drupal/modules/user/user.module,v retrieving revision 1.1021 diff -u -p -r1.1021 user.module --- modules/user/user.module 12 Aug 2009 12:36:05 -0000 1.1021 +++ modules/user/user.module 17 Aug 2009 11:08:53 -0000 @@ -1316,6 +1316,7 @@ function user_menu() { // User administration pages. $items['admin/people'] = array( 'title' => 'People', + 'description' => 'Find and manage people interacting with your site.', 'page callback' => 'user_admin', 'page arguments' => array('list'), 'access arguments' => array('administer users'), Index: themes/seven/style.css =================================================================== RCS file: /cvs/drupal/drupal/themes/seven/style.css,v retrieving revision 1.9 diff -u -p -r1.9 style.css --- themes/seven/style.css 12 Aug 2009 23:51:19 -0000 1.9 +++ themes/seven/style.css 17 Aug 2009 11:08:53 -0000 @@ -328,11 +328,11 @@ ul.secondary li.active a.active { #block-system-main ul.admin-list li { position: relative; padding-left: 30px; - padding-bottom: 9px; - border-bottom: 1px solid #ccc; + padding-top: 9px; + border-top: 1px solid #ccc; margin-left: 0; margin-bottom: 10px; - background: url(images/list-item.png) no-repeat 0 3px; + background: url(images/list-item.png) no-repeat 0 11px; list-style-type: none; list-style-image: none; } @@ -649,9 +649,8 @@ div.admin-panel { #block-system-main div.admin-panel h3 { font-size: 12px; text-transform: uppercase; - margin: 0 0 10px; + margin: 0; padding-bottom: 9px; - border-bottom: 1px solid #ccc; } .container-inline fieldset {