Index: wp-admin/rtl.css
===================================================================
--- wp-admin/rtl.css	(revision 11148)
+++ wp-admin/rtl.css	(working copy)
@@ -404,8 +404,7 @@
 #screen-meta-links {
 	margin: 0 0 0 9px;
 }
-#screen-options-link-wrap,
-#contextual-help-link-wrap {
+.screen-metas-link-wrap {
 	float: left;
 	font-family: Tahoma, "Times New Roman";
 	margin: 0 0 0 6px;
Index: wp-admin/wp-admin.css
===================================================================
--- wp-admin/wp-admin.css	(revision 11148)
+++ wp-admin/wp-admin.css	(working copy)
@@ -2422,8 +2422,7 @@
 	visibility: hidden;
 }
 
-#screen-options-link-wrap,
-#contextual-help-link-wrap {
+.screen-metas-link-wrap {
 	float: right;
 	background: transparent url( images/screen-options-left.gif ) no-repeat 0 0;
 	font-family: "Lucida Grande", Verdana, Arial, "Bitstream Vera Sans", sans-serif;
@@ -2432,7 +2431,7 @@
 	margin: 0 6px 0 0;
 }
 
-#screen-meta a.show-settings {
+#screen-meta a.screen-metas-link {
 	text-decoration: none;
 	z-index: 1;
 	padding: 0 16px 0 6px;
@@ -2444,22 +2443,24 @@
 	background-position: right bottom;
 }
 
-#screen-meta a.show-settings {
+#screen-meta a.screen-metas-link {
 	background-image: url( images/screen-options-right.gif );
 }
 
-#screen-meta a.show-settings:hover {
+#screen-meta a.screen-metas-link:hover {
 	text-decoration: none;
 }
 
-#screen-options-wrap h5,
-#contextual-help-wrap h5 {
+#screen-meta a.screen-metas-link.screen-options-open {
+	background-image: url( images/screen-options-right-up.gif );
+}
+
+#screen-meta .screen-metas-wrap h5 {
 	margin: 8px 0;
 	font-size: 13px;
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
+#screen-meta .screen-metas-wrap {
 	border-style: none solid solid;
 	border-top: 0 none;
 	border-width: 0 1px 1px;
Index: wp-admin/css/colors-classic.css
===================================================================
--- wp-admin/css/colors-classic.css	(revision 11148)
+++ wp-admin/css/colors-classic.css	(working copy)
@@ -1243,17 +1243,16 @@
 	color: #d54e21;
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
+.screen-metas-wrap {
 	background-color: #eae9e4;
 	border-color: #dfdfdf;
 }
 
-#screen-meta-links a.show-settings {
+#screen-meta-links a.screen-metas-link {
 	color: #606060;
 }
 
-#screen-meta-links a.show-settings:hover {
+#screen-meta-links a.screen-metas-link:hover {
 	color: #000;
 }
 
@@ -1499,7 +1498,7 @@
 	text-shadow: rgba(0,0,0,0.3) 0 -1px 0;
 }
 
-#screen-meta a.show-settings {
+#screen-meta a.screen-metas-link {
 	background-color: transparent;
 	text-shadow: rgba(255,255,255,0.7) 0 1px 0;
 }
Index: wp-admin/css/colors-fresh.css
===================================================================
--- wp-admin/css/colors-fresh.css	(revision 11148)
+++ wp-admin/css/colors-fresh.css	(working copy)
@@ -1208,17 +1208,16 @@
 }
 
 
-#screen-options-wrap,
-#contextual-help-wrap {
+.screen-metas-wrap {
 	background-color: #f1f1f1;
 	border-color: #dfdfdf;
 }
 
-#screen-meta-links a.show-settings {
+#screen-meta-links a.screen-metas-link {
 	color: #606060;
 }
 
-#screen-meta-links a.show-settings:hover {
+#screen-meta-links a.screen-metas-link:hover {
 	color: #000;
 }
 
@@ -1458,7 +1457,7 @@
 	text-shadow: rgba(0,0,0,0.3) 0 -1px 0;
 }
 
-#screen-meta a.show-settings {
+#screen-meta a.screen-metas-link {
 	background-color: transparent;
 	text-shadow: rgba(255,255,255,0.7) 0 1px 0;
 }
Index: wp-admin/css/ie.css
===================================================================
--- wp-admin/css/ie.css	(revision 11148)
+++ wp-admin/css/ie.css	(working copy)
@@ -26,16 +26,16 @@
 	height: 300px;
 }
 
-* html #wpbody-content #screen-options-link-wrap {
+* html #wpbody-content .screen-metas-link-wrap {
 	display: inline-block;
-	width: 150px;
+	width: auto;
+	float: right;
 	text-align: center;
+	postion: fixed;
 }
-
-* html #wpbody-content #contextual-help-link-wrap {
-	display: inline-block;
-	width: 100px;
-	text-align: center;
+* html #wpbody-content .screen-metas-link-wrap a {	
+	width: 1px !imporant;
+	white-space: nowrap;
 }
 
 * html #adminmenu {
@@ -208,7 +208,7 @@
 	position: relative;
 }
 
-#screen-options-wrap {
+.screen-metas-wrap {
 	overflow: hidden;
 }
 
Index: wp-admin/includes/template.php
===================================================================
--- wp-admin/includes/template.php	(revision 11148)
+++ wp-admin/includes/template.php	(working copy)
@@ -3400,30 +3400,15 @@
 	}
 }
 
-function screen_meta($screen) {
-	global $wp_meta_boxes, $_wp_contextual_help;
-
-	$screen = str_replace('.php', '', $screen);
-	$screen = str_replace('-new', '', $screen);
-	$screen = str_replace('-add', '', $screen);
-	$screen = apply_filters('screen_meta_screen', $screen);
-
-	$column_screens = get_column_headers($screen);
-	$meta_screens = array('index' => 'dashboard');
-
-	if ( isset($meta_screens[$screen]) )
-		$screen = $meta_screens[$screen];
-	$show_screen = false;
-	$show_on_screen = false;
-	if ( !empty($wp_meta_boxes[$screen]) || !empty($column_screens) ) {
-		$show_screen = true;
-		$show_on_screen = true;
-	}
-
-	$screen_options = screen_options($screen);
-	if ( $screen_options )
-		$show_screen = true;
-
+/**
+ * contextual help for a screen
+ * 
+ * @param  string $screen screen
+ * @return string
+ */
+function screen_meta_help($screen) {
+	global $_wp_contextual_help;
+	
 	if ( !isset($_wp_contextual_help) )
 		$_wp_contextual_help = array();
 
@@ -3472,14 +3457,71 @@
 			}
 			break;
 	}
-?>
-<div id="screen-meta">
-<?php
+	
+	// $_wp_contextual_help set now.
+	
+	global $title;
+
+	$_wp_contextual_help = apply_filters('contextual_help_list', $_wp_contextual_help, $screen);
+
+		$contextual_help = '';
+	if ( isset($_wp_contextual_help[$screen]) ) {
+		if ( !empty($title) )
+			$contextual_help .= '<h5>' . sprintf(__('Get help with "%s"'), $title) . '</h5>';
+		else
+			$contextual_help .= '<h5>' . __('Get help with this page') . '</h5>';
+		$contextual_help .= '<div class="metabox-prefs">' . $_wp_contextual_help[$screen] . "</div>\n";
+
+		$contextual_help .= '<h5>' . __('Other Help') . '</h5>';
+	} else {
+		$contextual_help .= '<h5>' . __('Help') . '</h5>';
+	}
+
+	$contextual_help .= '<div class="metabox-prefs">';
+	$contextual_help .= __('<a href="http://codex.wordpress.org/" target="_blank">Documentation</a>');
+	$contextual_help .= '<br />';
+	$contextual_help .= __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>');
+	$contextual_help .= "</div>\n";
+	
+	$contextual_help = apply_filters('contextual_help', $contextual_help, $screen);
+	
+	return $contextual_help; 	
+}
+
+/**
+ * screen options for a screen
+ * 
+ * @package WordPress
+ * @since 2.8
+ * 
+ * @param   string $screen screen
+ * @return  string 
+ */
+function  screen_meta_options($screen) {
+	global $wp_meta_boxes;
+	
+	$column_screens = get_column_headers($screen);
+	$meta_screens = array('index' => 'dashboard');
+
+	if ( isset($meta_screens[$screen]) )
+		$screen = $meta_screens[$screen];
+		
+	$show_screen = false;
+	$show_on_screen = false;
+	if ( !empty($wp_meta_boxes[$screen]) || !empty($column_screens) ) {
+		$show_screen = true;
+		$show_on_screen = true;
+	}
+
+	$screen_options = screen_options($screen);
+	if ( $screen_options )
+		$show_screen = true;
+		
+	ob_start();
 	if ( $show_screen ) :
 ?>
-<div id="screen-options-wrap" class="hidden">
-	<form id="adv-settings" action="" method="post">
 <?php if ( $show_on_screen ) : ?>
+<form id="adv-settings" action="" method="post">	
 	<h5><?php _e('Show on screen') ?></h5>
 	<div class="metabox-prefs">
 <?php
@@ -3494,50 +3536,60 @@
 <?php echo $screen_options; ?>
 <div><?php wp_nonce_field( 'screen-options-nonce', 'screenoptionnonce', false ); ?></div>
 </form>
-</div>
-
 <?php
 	endif;
+	
+	$return = ob_get_clean();
+	
+	return $return;
+}
 
-	global $title;
+/**
+ * screen metas for a certain screen
+ * 
+ * outputs html code to display screen meta links on top (normally
+ * screen options and the help tab)
+ * 
+ * @package WordPress
+ * @since 2.7
+ * 
+ * @param  string $screen
+ * @return void
+ */
+function screen_meta($screen) {
+	$screen = str_replace(array('.php', '-new', '-add'), '', $screen);
+	$screen = apply_filters('screen_meta_screen', $screen);
 
-	$_wp_contextual_help = apply_filters('contextual_help_list', $_wp_contextual_help, $screen);
-	?>
-	<div id="contextual-help-wrap" class="hidden">
-	<?php
-	$contextual_help = '';
-	if ( isset($_wp_contextual_help[$screen]) ) {
-		if ( !empty($title) )
-			$contextual_help .= '<h5>' . sprintf(__('Get help with "%s"'), $title) . '</h5>';
-		else
-			$contextual_help .= '<h5>' . __('Get help with this page') . '</h5>';
-		$contextual_help .= '<div class="metabox-prefs">' . $_wp_contextual_help[$screen] . "</div>\n";
+	// TODO: update css and js files to finish
+		
+	// basic metas are screen options and contextual help
+	$basic_metas = array();
+	$basic_metas[] = array(__('Help'), screen_meta_help($screen));	
+	$basic_metas[] = array(__('Screen Options'), screen_meta_options($screen));
+	
+	// filter screen metas
+	$basic_metas  = apply_filters('screen_meta_basic_metas', $basic_metas, $screen);		
+	$extra_metas  = apply_filters('screen_meta_extra_metas', array(), $screen);
 
-		$contextual_help .= '<h5>' . __('Other Help') . '</h5>';
-	} else {
-		$contextual_help .= '<h5>' . __('Help') . '</h5>';
+	// merge and filter empty
+	$screen_metas = array_merge($basic_metas, array_values($extra_metas));	
+	$screen_metas = array_filter($screen_metas, create_function('$a', 'return strlen($a[1]);'));
+?>
+<div id="screen-meta">
+<?php
+	foreach($screen_metas as $i => $screen_meta) {
+		printf('<div id="screen-meta-%d-wrap" class="screen-metas-wrap hidden">%s</div>', $i, $screen_meta[1]);
 	}
-
-	$contextual_help .= '<div class="metabox-prefs">';
-	$contextual_help .= __('<a href="http://codex.wordpress.org/" target="_blank">Documentation</a>');
-	$contextual_help .= '<br />';
-	$contextual_help .= __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>');
-	$contextual_help .= "</div>\n";
-	echo apply_filters('contextual_help', $contextual_help, $screen);
-	?>
-	</div>
-
+?>
 <div id="screen-meta-links">
-<div id="contextual-help-link-wrap" class="hide-if-no-js screen-meta-toggle">
-<a href="#contextual-help" id="contextual-help-link" class="show-settings"><?php _e('Help') ?></a>
+<?php 
+	foreach( $screen_metas as $i => $screen_meta ) {
+		printf('<div id="screen-meta-%d-link-wrap" class="screen-metas-link-wrap hide-if-no-js screen-meta-toggle">', $i);
+		printf('<a href="#screen-meta-%d" id="screen-meta-%d-link" class="screen-metas-link">%s</a></div>', $i, $i, $screen_meta[0]);		 
+	}
+?>
 </div>
-<?php if ( $show_screen ) { ?>
-<div id="screen-options-link-wrap" class="hide-if-no-js screen-meta-toggle">
-<a href="#screen-options" id="show-settings-link" class="show-settings"><?php _e('Screen Options') ?></a>
 </div>
-<?php } ?>
-</div>
-</div>
 <?php
 }
 
Index: wp-admin/js/common.dev.js
===================================================================
--- wp-admin/js/common.dev.js	(revision 11148)
+++ wp-admin/js/common.dev.js	(working copy)
@@ -152,43 +152,36 @@
 		}
 	});
 
-	// screen settings tab
-	$('#show-settings-link').click(function () {
-		if ( ! $('#screen-options-wrap').hasClass('screen-options-open') ) {
-			$('#contextual-help-link-wrap').addClass('invisible');
-		}
-		$('#screen-options-wrap').slideToggle('fast', function(){
-			if ( $(this).hasClass('screen-options-open') ) {
-				$('#show-settings-link').css({'backgroundImage':'url("images/screen-options-right.gif")'});
-				$('#contextual-help-link-wrap').removeClass('invisible');
-				$(this).removeClass('screen-options-open');
+	// screen meta tabs
+	$('#screen-meta-links .screen-metas-link-wrap a').click(function() {
 
-			} else {
-				$('#show-settings-link').css({'backgroundImage':'url("images/screen-options-right-up.gif")'});
-				$(this).addClass('screen-options-open');
-			}
-		});
-		return false;
-	});
-
-	// help tab
-	$('#contextual-help-link').click(function () {
-		if ( ! $('#contextual-help-wrap').hasClass('contextual-help-open') ) {
-			$('#screen-options-link-wrap').addClass('invisible');
+		var thisLink   = $(this);
+		var thisWrap   = $(this).parent().get(0);									
+		var thisOpened = $(this).hasClass('screen-options-open') ? true : false;
+								
+		// get thisMeta (the wrap that contains this meta stuff)
+		var thisMeta = $('#' + $(thisWrap).attr('id').replace(/-link/, ''));
+		
+		// hide others
+		if (!thisOpened) {
+			$('.screen-metas-link-wrap').each(function(){
+				if (this != thisWrap)
+					$(this).addClass('invisible');
+			});							
 		}
-		$('#contextual-help-wrap').slideToggle('fast', function(){
-			if ( $(this).hasClass('contextual-help-open') ) {
-				$('#contextual-help-link').css({'backgroundImage':'url("images/screen-options-right.gif")'});
-				$('#screen-options-link-wrap').removeClass('invisible');
-				$(this).removeClass('contextual-help-open');
-			} else {
-				$('#contextual-help-link').css({'backgroundImage':'url("images/screen-options-right-up.gif")'});
-				$(this).addClass('contextual-help-open');
-			}
-		});
-		return false;
+		
+		// slide in thisMeta
+		$(thisMeta).slideToggle('fast', function(){
+			$(thisLink).toggleClass('screen-options-open');
+			$(this).toggleClass('screen-options-open');
+			if (!$(this).hasClass('screen-options-open')) {
+				$('.screen-metas-link-wrap').removeClass('invisible');
+			}															
+		});											
 	});
-	$('#contextual-help-link-wrap, #screen-options-link-wrap').show();
+	
+	$('.screen-metas-link-wrap').show();
+	
 
 	// check all checkboxes
 	$( 'table:visible tbody .check-column :checkbox' ).click( function(e) {
