Index: /trunk/bp-core/bp-core-adminbar.php
===================================================================
--- /trunk/bp-core/bp-core-adminbar.php	(revision 4585)
+++ /trunk/bp-core/bp-core-adminbar.php	(revision 4586)
@@ -10,9 +10,9 @@
  */
 
-/**
- * Unhook the WordPress core menus. We will be adding our own to replace these.
- *
- * @todo Single blog/post/group/user/forum/activity menus
- * @todo Admin/moderator menus
+if ( !defined( 'BP_USE_WP_ADMIN_BAR' ) || defined( 'DOING_AJAX' ) )
+	return;
+
+/**
+ * Unhook the WordPress core menus.
  *
  * @since BuddyPress (r4151)
@@ -23,26 +23,225 @@
  */
 function bp_admin_bar_remove_wp_menus() {
+
 	remove_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 10 );
-	
+	remove_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
+	remove_action( 'admin_bar_menu', 'wp_admin_bar_dashboard_view_site_menu', 25 );
+
 	// Don't show the 'Edit Page' menu on BP pages
-	if ( !bp_is_blog_page() ) 
+	if ( !bp_is_blog_page() )
 		remove_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 30 );
 
-	/*remove_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu',   20 );
-	remove_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu',       30 );
-	remove_action( 'admin_bar_menu', 'wp_admin_bar_shortlink_menu',  80 );
+	remove_action( 'admin_bar_menu', 'wp_admin_bar_shortlink_menu', 80 );
+	remove_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 70 );
 
 	if ( !is_network_admin() && !is_user_admin() ) {
-		remove_action( 'admin_bar_menu', 'wp_admin_bar_new_content_menu', 40 );
-		remove_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu',    50 );
-		remove_action( 'admin_bar_menu', 'wp_admin_bar_appearance_menu',  60 );
+		remove_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 50 );
+		remove_action( 'admin_bar_menu', 'wp_admin_bar_appearance_menu', 60 );
 	}
 
-	remove_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu',    70 );*/
-}
-if ( defined( 'BP_USE_WP_ADMIN_BAR' ) )
-	add_action( 'bp_init', 'bp_admin_bar_remove_wp_menus', 2 );
-
-
+	remove_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 70 );
+}
+add_action( 'bp_init', 'bp_admin_bar_remove_wp_menus', 2 );
+
+/**
+ * Add a menu for the root site of this BuddyPress network
+ *
+ * @global type $bp
+ * @global type $wp_admin_bar
+ * @return If in ajax
+ */
+function bp_admin_bar_root_site() {
+	global $bp, $wp_admin_bar;
+
+	// Create the root blog menu
+	$wp_admin_bar->add_menu( array(
+		'id'    => 'bp-root-blog',
+		'title' => get_blog_option( BP_ROOT_BLOG, 'blogname' ),
+		'href'  => bp_get_root_domain()
+	) );
+
+	// Logged in user
+	if ( is_user_logged_in() ) {
+
+		// Dashboard links
+		if ( is_super_admin() ) {
+
+			// Add site admin link
+			$wp_admin_bar->add_menu( array(
+				'id' => 'dashboard',
+				'parent' => 'bp-root-blog',
+				'title' => __( 'Admin Dashboard', 'buddypress' ),
+				'href' => get_admin_url( BP_ROOT_BLOG )
+			) );
+
+			// Add network admin link
+			if ( is_multisite() ) {
+
+				// Link to the network admin dashboard
+				$wp_admin_bar->add_menu( array(
+					'id' => 'network-dashboard',
+					'parent' => 'bp-root-blog',
+					'title' => __( 'Network Dashboard', 'buddypress' ),
+					'href' => network_admin_url()
+				) );
+			}
+		}
+	}
+}
+add_action( 'bp_setup_admin_bar', 'bp_admin_bar_root_site', 3 );
+
+/**
+ * Add the "My Sites/[Site Name]" menu and all submenus.
+ */
+function bp_admin_bar_my_sites_menu() {
+	global $wpdb, $wp_admin_bar;
+
+	/* Add the 'My Sites' menu if the user has more than one site. */
+	if ( count( $wp_admin_bar->user->blogs ) <= 1 )
+		return;
+
+	$wp_admin_bar->add_menu( array( 'id' => 'my-blogs', 'title' => __( 'My Sites' ), 'href' => admin_url( 'my-sites.php' ) ) );
+
+	$default = includes_url( 'images/wpmini-blue.png' );
+
+	foreach ( (array)$wp_admin_bar->user->blogs as $blog ) {
+		// @todo Replace with some favicon lookup.
+		//$blavatar = '<img src="' . esc_url( blavatar_url( blavatar_domain( $blog->siteurl ), 'img', 16, $default ) ) . '" alt="Blavatar" width="16" height="16" />';
+		$blavatar = '<img src="' . esc_url( $default ) . '" alt="' . esc_attr__( 'Blavatar' ) . '" width="16" height="16" class="blavatar"/>';
+
+		$blogname = empty( $blog->blogname ) ? $blog->domain : $blog->blogname;
+
+		$wp_admin_bar->add_menu( array( 'parent' => 'my-blogs', 'id' => 'blog-' . $blog->userblog_id, 'title' => $blavatar . $blogname, 'href' => get_admin_url( $blog->userblog_id ) ) );
+		$wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-d', 'title' => __( 'Dashboard' ), 'href' => get_admin_url( $blog->userblog_id ) ) );
+
+		if ( current_user_can_for_blog( $blog->userblog_id, 'edit_posts' ) ) {
+			$wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-n', 'title' => __( 'New Post' ), 'href' => get_admin_url( $blog->userblog_id, 'post-new.php' ) ) );
+			$wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-c', 'title' => __( 'Manage Comments' ), 'href' => get_admin_url( $blog->userblog_id, 'edit-comments.php' ) ) );
+		}
+
+		$wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-v', 'title' => __( 'Visit Site' ), 'href' => get_home_url( $blog->userblog_id ) ) );
+	}
+}
+add_action( 'bp_setup_admin_bar', 'bp_admin_bar_my_sites_menu', 3 );
+
+/**
+ * Add edit comments link with awaiting moderation count bubble
+ */
+function bp_admin_bar_comments_menu( $wp_admin_bar ) {
+	global $wp_admin_bar;
+
+	if ( !current_user_can( 'edit_posts' ) )
+		return;
+
+	$awaiting_mod = wp_count_comments();
+	$awaiting_mod = $awaiting_mod->moderated;
+
+	$awaiting_mod = $awaiting_mod ? "<span id='ab-awaiting-mod' class='pending-count'>" . number_format_i18n( $awaiting_mod ) . "</span>" : '';
+	$wp_admin_bar->add_menu( array( 'parent' => 'dashboard', 'id' => 'comments', 'title' => sprintf( __( 'Comments %s' ), $awaiting_mod ), 'href' => admin_url( 'edit-comments.php' ) ) );
+}
+add_action( 'bp_setup_admin_bar', 'bp_admin_bar_comments_menu', 3 );
+
+/**
+ * Add "Appearance" menu with widget and nav menu submenu
+ */
+function bp_admin_bar_appearance_menu() {
+	global $wp_admin_bar;
+
+	// You can have edit_theme_options but not switch_themes.
+	if ( !current_user_can( 'switch_themes' ) && !current_user_can( 'edit_theme_options' ) )
+		return;
+
+	$wp_admin_bar->add_menu( array( 'parent' => 'dashboard', 'id' => 'appearance', 'title' => __( 'Appearance' ), 'href' => admin_url( 'themes.php' ) ) );
+
+	if ( !current_user_can( 'edit_theme_options' ) )
+		return;
+
+	if ( current_user_can( 'switch_themes' ) )
+		$wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'themes', 'title' => __( 'Themes' ), 'href' => admin_url( 'themes.php' ) ) );
+
+	if ( current_theme_supports( 'widgets' ) )
+		$wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'widgets', 'title' => __( 'Widgets' ), 'href' => admin_url( 'widgets.php' ) ) );
+
+	if ( current_theme_supports( 'menus' ) || current_theme_supports( 'widgets' ) )
+		$wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'menus', 'title' => __( 'Menus' ), 'href' => admin_url( 'nav-menus.php' ) ) );
+
+	if ( current_theme_supports( 'custom-background' ) )
+		$wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'background', 'title' => __( 'Background' ), 'href' => admin_url( 'themes.php?page=custom-background' ) ) );
+
+	if ( current_theme_supports( 'custom-header' ) )
+		$wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'header', 'title' => __( 'Header' ), 'href' => admin_url( 'themes.php?page=custom-header' ) ) );
+}
+add_action( 'bp_setup_admin_bar', 'bp_admin_bar_appearance_menu', 3 );
+
+/**
+ * Provide an update link if theme/plugin/core updates are available
+ */
+function bp_admin_bar_updates_menu() {
+	global $wp_admin_bar;
+
+	if ( !current_user_can( 'install_plugins' ) )
+		return;
+
+	$plugin_update_count = $theme_update_count = $wordpress_update_count = 0;
+	$update_plugins = get_site_transient( 'update_plugins' );
+	if ( !empty( $update_plugins->response ) )
+		$plugin_update_count = count( $update_plugins->response );
+	$update_themes = get_site_transient( 'update_themes' );
+	if ( !empty( $update_themes->response ) )
+		$theme_update_count = count( $update_themes->response );
+	/* @todo get_core_updates() is only available on admin page loads
+	  $update_wordpress = get_core_updates( array('dismissed' => false) );
+	  if ( !empty($update_wordpress) && !in_array( $update_wordpress[0]->response, array('development', 'latest') ) )
+	  $wordpress_update_count = 1;
+	 */
+
+	$update_count = $plugin_update_count + $theme_update_count + $wordpress_update_count;
+
+	if ( !$update_count )
+		return;
+
+	$update_title = array( );
+	if ( $wordpress_update_count )
+		$update_title[] = sprintf( __( '%d WordPress Update' ), $wordpress_update_count );
+	if ( $plugin_update_count )
+		$update_title[] = sprintf( _n( '%d Plugin Update', '%d Plugin Updates', $plugin_update_count ), $plugin_update_count );
+	if ( $theme_update_count )
+		$update_title[] = sprintf( _n( '%d Theme Update', '%d Theme Updates', $theme_update_count ), $theme_update_count );
+
+	$update_title = !empty( $update_title ) ? esc_attr( implode( ', ', $update_title ) ) : '';
+
+	$update_title = "<span title='$update_title'>";
+	$update_title .= sprintf( __( 'Updates %s' ), "<span id='ab-updates' class='update-count'>" . number_format_i18n( $update_count ) . '</span>' );
+	$update_title .= '</span>';
+
+	$wp_admin_bar->add_menu( array( 'parent' => 'dashboard', 'id' => 'updates', 'title' => $update_title, 'href' => network_admin_url( 'update-core.php' ) ) );
+}
+add_action( 'bp_setup_admin_bar', 'bp_admin_bar_updates_menu', 3 );
+
+/**
+ * Handle the Admin Bar CSS
+ */
+function bp_core_load_admin_bar_css() {
+	global $wp_version;
+
+	// Admin bar styles
+	if ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG )
+		$stylesheet = BP_PLUGIN_URL . '/bp-core/css/admin-bar.dev.css';
+	else
+		$stylesheet = BP_PLUGIN_URL . '/bp-core/css/admin-bar.css';
+
+	wp_enqueue_style( 'bp-admin-bar', apply_filters( 'bp_core_admin_bar_css', $stylesheet ), array( 'admin-bar' ), BP_VERSION );
+
+	if ( !is_rtl() )
+		return;
+
+	if ( defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG )
+		$stylesheet = BP_PLUGIN_URL . '/bp-core/css/admin_bar-rtl.dev.css';
+	else
+		$stylesheet = BP_PLUGIN_URL . '/bp-core/css/admin_bar-rtl.css';
+
+	wp_enqueue_style( 'bp-admin-bar-rtl', apply_filters( 'bp_core_admin_bar_rtl_css', $stylesheet ), array( 'bp-admin-bar' ), BP_VERSION );
+}
+add_action( 'bp_init', 'bp_core_load_admin_bar_css' );
 
 ?>
Index: /trunk/bp-core/bp-core-functions.php
===================================================================
--- /trunk/bp-core/bp-core-functions.php	(revision 4585)
+++ /trunk/bp-core/bp-core-functions.php	(revision 4586)
@@ -17,5 +17,5 @@
  * @return mixed The value for the option
  */
-function bp_get_option( $option_name, $default = false ) {
+function bp_get_option( $option_name, $default = '' ) {
 	$value = get_blog_option( bp_get_option_blog_id( $option_name ), $option_name, $default );
 	
Index: /trunk/bp-core/bp-core-loader.php
===================================================================
--- /trunk/bp-core/bp-core-loader.php	(revision 4585)
+++ /trunk/bp-core/bp-core-loader.php	(revision 4586)
@@ -138,5 +138,5 @@
 		// Fetches all of the core BuddyPress settings in one fell swoop
 		if ( empty( $bp->site_options ) )
-			$bp->site_options = bp_core_get_site_options();
+			$bp->site_options = bp_core_get_root_options();
 
 		// The names of the core WordPress pages used to display BuddyPress content
Index: /trunk/bp-core/css/admin-bar.css
===================================================================
--- /trunk/bp-core/css/admin-bar.css	(revision 4586)
+++ /trunk/bp-core/css/admin-bar.css	(revision 4586)
@@ -0,0 +1,28 @@
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin > a {
+	border-left: none;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar > a {
+	border-left: none;
+	background: url(../images/admin-bar-sprite.png?d=11122010) top left no-repeat;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar > a img {
+	width: 16px;
+	height: 16px;
+	display: inline;
+	border: 1px solid #999;
+	vertical-align: middle;
+	margin: -2px 23px 0 -5px;
+	padding: 0;
+	background: #eee;
+	float: none;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar ul {
+	left: 30px;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar ul ul { 
+ 	left: 0; 
+}
Index: /trunk/bp-core/css/admin-bar.dev.css
===================================================================
--- /trunk/bp-core/css/admin-bar.dev.css	(revision 4586)
+++ /trunk/bp-core/css/admin-bar.dev.css	(revision 4586)
@@ -0,0 +1,120 @@
+#wpadminbar .quicklinks li#wp-admin-bar-my-account ul,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul {
+	left: 0;
+	right: auto;
+}
+
+/* These extra bits move the user links to the right side
+
+#wpadminbar .quicklinks #wp-admin-bar-bp-register,
+#wpadminbar .quicklinks #wp-admin-bar-bp-login {
+	float: right;
+}
+#wpadminbar .quicklinks li#wp-admin-bar-my-account,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar {
+	float: right;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account ul,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul {
+	
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account ul li,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul li {
+	float: right;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account ul,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul {
+	left: auto;
+	right: 0;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account ul ul,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul ul {
+	right: 0;
+	left: auto;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account.menupop li:hover > ul,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar.menupop li.hover > ul {
+	margin-right: 100%;
+	margin-left: 0;
+}
+
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account.menupop ul li a > span,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar.menupop ul li a > span {
+	background: url(../images/admin-bar-sprite-rtl.png?d=11122010) left -29px no-repeat;
+	padding-right: 0;
+	padding-left: 1.5em;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar.menupop li a img.blavatar,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account.menupop li a img.blavatar {
+	margin-right: 0;
+	margin-left: 8px;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account > a,
+#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar > a {
+	border-right: none;
+	border-left: 1px solid #686868;
+}
+
+End extra bits */
+
+/* Displayed User */
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar > a {
+	border-left: none;
+	background: url(../images/admin-bar-sprite.png?d=11122010) top left no-repeat;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar > a img {
+	width: 16px;
+	height: 16px;
+	display: inline;
+	border: 1px solid #999;
+	vertical-align: middle;
+	margin: -2px 23px 0 -5px;
+	padding: 0;
+	background: #eee;
+	float: none;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar ul {
+	left: 0;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-user-admin-with-avatar ul ul { 
+ 	left: 0; 
+}
+
+/* Displayed Group */
+
+#wpadminbar .quicklinks li#wp-admin-bar-group-admin-with-avatar > a {
+	border-left: none;
+	background: url(../images/admin-bar-sprite.png?d=11122010) top left no-repeat;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-group-admin-with-avatar > a img {
+	width: 16px;
+	height: 16px;
+	display: inline;
+	border: 1px solid #999;
+	vertical-align: middle;
+	margin: -2px 23px 0 -5px;
+	padding: 0;
+	background: #eee;
+	float: none;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-group-admin-with-avatar ul {
+	left: 0;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-group-admin-with-avatar ul ul { 
+ 	left: 0; 
+}
Index: /trunk/bp-forums/bp-forums-loader.php
===================================================================
--- /trunk/bp-forums/bp-forums-loader.php	(revision 4585)
+++ /trunk/bp-forums/bp-forums-loader.php	(revision 4586)
@@ -133,5 +133,5 @@
 		// Additional menu if friends is active
 		$sub_nav[] = array(
-			'name'            => __( 'Started', 'buddypress' ),
+			'name'            => __( 'Topics Started', 'buddypress' ),
 			'slug'            => 'topics',
 			'parent_url'      => $forums_link,
@@ -199,5 +199,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'My Topics', 'buddypress' ),
+				'title'  => __( 'Topics Started', 'buddypress' ),
 				'href'   => trailingslashit( $forums_link . 'topics' )
 			);
@@ -206,5 +206,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'My Replies', 'buddypress' ),
+				'title'  => __( 'Replies', 'buddypress' ),
 				'href'   => trailingslashit( $forums_link . 'replies' )
 			);
@@ -213,5 +213,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'My Favorites', 'buddypress' ),
+				'title'  => __( 'Favorite Topics', 'buddypress' ),
 				'href'   => trailingslashit( $forums_link . 'favorites' )
 			);
@@ -232,5 +232,5 @@
 		if ( bp_is_forums_component() ) {
 			if ( bp_is_my_profile() ) {
-				$bp->bp_options_title = __( 'My Forums', 'buddypress' );
+				$bp->bp_options_title = __( 'Forums', 'buddypress' );
 			} else {
 				$bp->bp_options_avatar = bp_core_fetch_avatar( array(
Index: /trunk/bp-friends/bp-friends-loader.php
===================================================================
--- /trunk/bp-friends/bp-friends-loader.php	(revision 4585)
+++ /trunk/bp-friends/bp-friends-loader.php	(revision 4586)
@@ -107,5 +107,5 @@
 		// Add the subnav items to the friends nav item
 		$sub_nav[] = array(
-			'name' => __( 'My Friends', 'buddypress' ),
+			'name' => __( 'Friendships', 'buddypress' ),
 			'slug' => 'my-friends',
 			'parent_url' => $friends_link,
@@ -167,5 +167,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'My Friends', 'buddypress' ),
+				'title'  => __( 'Friendships', 'buddypress' ),
 				'href'   => trailingslashit( $friends_link )
 			);
@@ -193,5 +193,5 @@
 		if ( bp_is_friends_component() ) {
 			if ( bp_is_my_profile() ) {
-				$bp->bp_options_title = __( 'My Friends', 'buddypress' );
+				$bp->bp_options_title = __( 'Friendships', 'buddypress' );
 			} else {
 				$bp->bp_options_avatar = bp_core_fetch_avatar( array(
Index: /trunk/bp-groups/bp-groups-adminbar.php
===================================================================
--- /trunk/bp-groups/bp-groups-adminbar.php	(revision 4585)
+++ /trunk/bp-groups/bp-groups-adminbar.php	(revision 4586)
@@ -29,16 +29,29 @@
 		return false;
 
+	// Group avatar
+	$avatar = bp_core_fetch_avatar( array(
+		'object'     => 'group',
+		'type'       => 'thumb',
+		'avatar_dir' => 'group-avatars',
+		'item_id'    => $bp->groups->current_group->id,
+		'width'      => 16,
+		'height'     => 16
+	) );
+
+	// Unique ID for the 'My Account' menu
+	$bp->group_admin_menu_id = ( ! empty( $avatar ) ) ? 'group-admin-with-avatar' : 'group-admin';
+
 	// Add the top-level Group Admin button
 	$wp_admin_bar->add_menu( array(
-		'id'    => 'group-admin',
-		'title' => __( 'Group Admin', 'buddypress' ),
-		'href'  => bp_displayed_user_domain()
+		'id'    => $bp->group_admin_menu_id,
+		'title' => $avatar . bp_get_current_group_name(),
+		'href'  => bp_get_group_permalink( $bp->groups->current_group )
 	) );
 	
 	// Group Admin > Edit details
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'group-admin',
+		'parent' => $bp->group_admin_menu_id,
 		'id'     => 'edit-details',
-		'title'  => __( "Edit Details", 'buddypress' ),
+		'title'  => __( 'Edit Details', 'buddypress' ),
 		'href'   =>  bp_get_groups_action_link( 'admin/edit-details' )
 	) );
@@ -46,7 +59,7 @@
 	// Group Admin > Group settings
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'group-admin',
+		'parent' => $bp->group_admin_menu_id,
 		'id'     => 'group-settings',
-		'title'  => __( "Group Settings", 'buddypress' ),
+		'title'  => __( 'Edit Settings', 'buddypress' ),
 		'href'   =>  bp_get_groups_action_link( 'admin/group-settings' )
 	) );
@@ -54,7 +67,7 @@
 	// Group Admin > Group avatar
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'group-admin',
+		'parent' => $bp->group_admin_menu_id,
 		'id'     => 'group-avatar',
-		'title'  => __( "Group Avatar", 'buddypress' ),
+		'title'  => __( 'Edit Avatar', 'buddypress' ),
 		'href'   =>  bp_get_groups_action_link( 'admin/group-avatar' )
 	) );
@@ -63,7 +76,7 @@
 	if ( bp_is_active( 'friends' ) ) {
 		$wp_admin_bar->add_menu( array(
-			'parent' => 'group-admin',
+			'parent' => $bp->group_admin_menu_id,
 			'id'     => 'manage-invitations',
-			'title'  => __( "Manage Invitations", 'buddypress' ),
+			'title'  => __( 'Manage Invitations', 'buddypress' ),
 			'href'   =>  bp_get_groups_action_link( 'send-invites' )
 		) );
@@ -72,7 +85,7 @@
 	// Group Admin > Manage members
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'group-admin',
+		'parent' => $bp->group_admin_menu_id,
 		'id'     => 'manage-members',
-		'title'  => __( "Manage Members", 'buddypress' ),
+		'title'  => __( 'Manage Members', 'buddypress' ),
 		'href'   =>  bp_get_groups_action_link( 'admin/manage-members' )
 	) );
@@ -81,7 +94,7 @@
 	if ( bp_get_group_status( $bp->groups->current_group ) == 'private' ) {
 		$wp_admin_bar->add_menu( array(
-			'parent' => 'group-admin',
+			'parent' => $bp->group_admin_menu_id,
 			'id'     => 'membership-requests',
-			'title'  => __( "Membership Requests", 'buddypress' ),
+			'title'  => __( 'Membership Requests', 'buddypress' ),
 			'href'   =>  bp_get_groups_action_link( 'admin/membership-requests' )
 		) );
@@ -90,7 +103,7 @@
 	// Delete Group
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'group-admin',
+		'parent' => $bp->group_admin_menu_id,
 		'id'     => 'delete-group',
-		'title'  => __( "Delete Group", 'buddypress' ),
+		'title'  => __( 'Delete Group', 'buddypress' ),
 		'href'   =>  bp_get_groups_action_link( 'admin/delete-group' )
 	) );
Index: /trunk/bp-groups/bp-groups-loader.php
===================================================================
--- /trunk/bp-groups/bp-groups-loader.php	(revision 4585)
+++ /trunk/bp-groups/bp-groups-loader.php	(revision 4586)
@@ -235,5 +235,5 @@
 		// Add the My Groups nav item
 		$sub_nav[] = array(
-			'name'            => __( 'My Groups', 'buddypress' ),
+			'name'            => __( 'Memberships', 'buddypress' ),
 			'slug'            => 'my-groups',
 			'parent_url'      => $groups_link,
@@ -246,5 +246,5 @@
 		// Add the Group Invites nav item
 		$sub_nav[] = array(
-			'name'            => __( 'Invitations',   'buddypress' ),
+			'name'            => __( 'Invitations', 'buddypress' ),
 			'slug'            => 'invites',
 			'parent_url'      => $groups_link,
@@ -263,5 +263,5 @@
 			// Add 'Groups' to the main navigation
 			$main_nav = array(
-				'name'                => __( 'Groups', 'buddypress' ),
+				'name'                => __( 'Memberships', 'buddypress' ),
 				'slug'                => $this->current_group->slug,
 				'position'            => -1, // Do not show in BuddyBar
@@ -402,5 +402,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'My Groups', 'buddypress' ),
+				'title'  => __( 'Memberships', 'buddypress' ),
 				'href'   => trailingslashit( $groups_link )
 			);
@@ -429,5 +429,5 @@
 			if ( bp_is_my_profile() && !bp_is_single_item() ) {
 
-				$bp->bp_options_title = __( 'My Groups', 'buddypress' );
+				$bp->bp_options_title = __( 'Memberships', 'buddypress' );
 
 			} else if ( !bp_is_my_profile() && !bp_is_single_item() ) {
Index: /trunk/bp-groups/bp-groups-template.php
===================================================================
--- /trunk/bp-groups/bp-groups-template.php	(revision 4585)
+++ /trunk/bp-groups/bp-groups-template.php	(revision 4586)
@@ -1242,5 +1242,5 @@
 ?>
 	<?php if ( $bp->is_item_admin || $bp->is_item_mod ) { ?>
-		<li<?php if ( 'edit-details' == $current_tab || empty( $current_tab ) ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/edit-details"><?php _e('Edit Details', 'buddypress') ?></a></li>
+		<li<?php if ( 'edit-details' == $current_tab || empty( $current_tab ) ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/edit-details"><?php _e( 'Details', 'buddypress' ); ?></a></li>
 	<?php } ?>
 
@@ -1249,15 +1249,15 @@
 			return false;
 	?>
-	<li<?php if ( 'group-settings' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/group-settings"><?php _e('Group Settings', 'buddypress') ?></a></li>
-	<li<?php if ( 'group-avatar' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/group-avatar"><?php _e('Group Avatar', 'buddypress') ?></a></li>
-	<li<?php if ( 'manage-members' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/manage-members"><?php _e('Manage Members', 'buddypress') ?></a></li>
+	<li<?php if ( 'group-settings' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/group-settings"><?php _e( 'Settings', 'buddypress' ); ?></a></li>
+	<li<?php if ( 'group-avatar' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/group-avatar"><?php _e( 'Avatar', 'buddypress' ); ?></a></li>
+	<li<?php if ( 'manage-members' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/manage-members"><?php _e( 'Members', 'buddypress' ); ?></a></li>
 
 	<?php if ( $groups_template->group->status == 'private' ) : ?>
-		<li<?php if ( 'membership-requests' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/membership-requests"><?php _e('Membership Requests', 'buddypress') ?></a></li>
+		<li<?php if ( 'membership-requests' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/membership-requests"><?php _e( 'Requests', 'buddypress' ); ?></a></li>
 	<?php endif; ?>
 
 	<?php do_action( 'groups_admin_tabs', $current_tab, $group->slug ) ?>
 
-	<li<?php if ( 'delete-group' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/delete-group"><?php _e('Delete Group', 'buddypress') ?></a></li>
+	<li<?php if ( 'delete-group' == $current_tab ) : ?> class="current"<?php endif; ?>><a href="<?php echo bp_get_root_domain() . '/' . $bp->groups->root_slug ?>/<?php echo $group->slug ?>/admin/delete-group"><?php _e( 'Delete', 'buddypress' ); ?></a></li>
 <?php
 }
Index: /trunk/bp-members/bp-members-adminbar.php
===================================================================
--- /trunk/bp-members/bp-members-adminbar.php	(revision 4585)
+++ /trunk/bp-members/bp-members-adminbar.php	(revision 4586)
@@ -22,35 +22,6 @@
 		return;
 
-	// Create the root blog menu
-	$wp_admin_bar->add_menu( array(
-		'id'    => 'bp-root-blog',
-		'title' => get_blog_option( BP_ROOT_BLOG, 'blogname' ),
-		'href'  => bp_get_root_domain()
-	) );
-
 	// Logged in user
 	if ( is_user_logged_in() ) {
-
-		// Dashboard links
-		if ( is_super_admin() ) {
-
-			// Add site admin link
-			$wp_admin_bar->add_menu( array(
-				'parent' => 'bp-root-blog',
-				'title'  => __( 'Admin Dashboard', 'buddypress' ),
-				'href'   => get_admin_url( BP_ROOT_BLOG )
-			) );
-
-			// Add network admin link
-			if ( is_multisite() ) {
-
-				// Link to the network admin dashboard
-				$wp_admin_bar->add_menu( array(
-					'parent' => 'bp-root-blog',
-					'title'  => __( 'Network Dashboard', 'buddypress' ),
-					'href'   => network_admin_url()
-				) );
-			}
-		}
 
 		// User avatar
@@ -68,5 +39,5 @@
 		$wp_admin_bar->add_menu( array(
 			'id'    => $bp->my_account_menu_id,
-			'title' => $avatar . bp_get_user_firstname( $bp->loggedin_user->fullname ),
+			'title' => $avatar . bp_get_loggedin_user_fullname(),
 			'href'  => $bp->loggedin_user->domain
 		) );
@@ -103,5 +74,5 @@
  */
 function bp_members_user_admin_menu() {
-	global $wp_admin_bar;
+	global $bp, $wp_admin_bar;
 
 	// Only show if viewing a user
@@ -113,8 +84,19 @@
 		return false;
 
+	// User avatar
+	$avatar = bp_core_fetch_avatar( array(
+		'item_id' => $bp->displayed_user->id,
+		'email'   => $bp->displayed_user->userdata->user_email,
+		'width'   => 16,
+		'height'  => 16
+	) );
+
+	// Unique ID for the 'My Account' menu
+	$bp->user_admin_menu_id = ( ! empty( $avatar ) ) ? 'user-admin-with-avatar' : 'user-admin';
+
 	// Add the top-level User Admin button
 	$wp_admin_bar->add_menu( array(
-		'id'    => 'user-admin',
-		'title' => __( 'User Admin', 'buddypress' ),
+		'id'    => $bp->user_admin_menu_id,
+		'title' => $avatar . bp_get_displayed_user_fullname(),
 		'href'  => bp_displayed_user_domain()
 	) );
@@ -122,7 +104,7 @@
 	// User Admin > Edit this user's profile
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'user-admin',
+		'parent' => $bp->user_admin_menu_id,
 		'id'     => 'edit-profile',
-		'title'  => sprintf( __( "Edit %s's Profile", 'buddypress' ), bp_get_displayed_user_fullname() ),
+		'title'  => __( "Edit Profile", 'buddypress' ),
 		'href'   => bp_get_members_component_link( 'profile', 'edit' )
 	) );
@@ -130,15 +112,7 @@
 	// User Admin > Edit this user's avatar
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'user-admin',
+		'parent' => $bp->user_admin_menu_id,
 		'id'     => 'change-avatar',
-		'title'  => sprintf( __( "Edit %s's Avatar", 'buddypress' ), bp_get_displayed_user_fullname() ),
-		'href'   => bp_get_members_component_link( 'profile', 'change-avatar' )
-	) );
-	
-	// User Admin > Edit this user's avatar
-	$wp_admin_bar->add_menu( array(
-		'parent' => 'user-admin',
-		'id'     => 'change-avatar',
-		'title'  => sprintf( __( "Edit %s's Avatar", 'buddypress' ), bp_get_displayed_user_fullname() ),
+		'title'  => __( "Edit Avatar", 'buddypress' ),
 		'href'   => bp_get_members_component_link( 'profile', 'change-avatar' )
 	) );
@@ -147,7 +121,7 @@
 	if ( !bp_core_is_user_spammer( bp_displayed_user_id() ) ) {
 		$wp_admin_bar->add_menu( array(
-			'parent' => 'user-admin',
+			'parent' => $bp->user_admin_menu_id,
 			'id'     => 'spam-user',
-			'title'  => __( "Mark as Spammer", 'buddypress' ),
+			'title'  => __( 'Mark as Spammer', 'buddypress' ),
 			'href'   => wp_nonce_url( bp_displayed_user_domain() . 'admin/mark-spammer/', 'mark-unmark-spammer' ),
 			'meta'   => array( 'onclick' => 'confirm(" ' . __( 'Are you sure you want to mark this user as a spammer?', 'buddypress' ) . '");' ) 
@@ -155,7 +129,7 @@
 	} else {
 		$wp_admin_bar->add_menu( array(
-			'parent' => 'user-admin',
+			'parent' => $bp->user_admin_menu_id,
 			'id'     => 'unspam-user',
-			'title'  => __( "Not a Spammer", 'buddypress' ),
+			'title'  => __( 'Not a Spammer', 'buddypress' ),
 			'href'   => wp_nonce_url( bp_displayed_user_domain() . 'admin/unmark-spammer/', 'mark-unmark-spammer' ),
 			'meta'   => array( 'onclick' => 'confirm(" ' . __( 'Are you sure you want to mark this user as not a spammer?', 'buddypress' ) . '");' ) 
@@ -165,7 +139,7 @@
 	// User Admin > Delete Account
 	$wp_admin_bar->add_menu( array(
-		'parent' => 'user-admin',
+		'parent' => $bp->user_admin_menu_id,
 		'id'     => 'delete-user',
-		'title'  => sprintf( __( "Delete %s's Account", 'buddypress' ), bp_get_displayed_user_fullname() ),
+		'title'  => __( 'Delete Account', 'buddypress' ),
 		'href'   => wp_nonce_url( bp_displayed_user_domain() . 'admin/delete-user/', 'delete-user' ),
 		'meta'   => array( 'onclick' => 'confirm(" ' . __( "Are you sure you want to delete this user's account?", 'buddypress' ) . '");' ) 
Index: /trunk/bp-messages/bp-messages-loader.php
===================================================================
--- /trunk/bp-messages/bp-messages-loader.php	(revision 4585)
+++ /trunk/bp-messages/bp-messages-loader.php	(revision 4586)
@@ -125,5 +125,5 @@
 
 		$sub_nav[] = array(
-			'name'            => __( 'Sent Messages', 'buddypress' ),
+			'name'            => __( 'Sent', 'buddypress' ),
 			'slug'            => 'sentbox',
 			'parent_url'      => $messages_link,
Index: /trunk/bp-xprofile/bp-xprofile-loader.php
===================================================================
--- /trunk/bp-xprofile/bp-xprofile-loader.php	(revision 4585)
+++ /trunk/bp-xprofile/bp-xprofile-loader.php	(revision 4586)
@@ -135,5 +135,5 @@
 		// Edit Profile
 		$sub_nav[] = array(
-			'name'            => __( 'Edit Profile', 'buddypress' ),
+			'name'            => __( 'Edit', 'buddypress' ),
 			'slug'            => 'edit',
 			'parent_url'      => $profile_link,
@@ -184,5 +184,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'View My Profile', 'buddypress' ),
+				'title'  => __( 'View', 'buddypress' ),
 				'href'   => trailingslashit( $profile_link . 'public' )
 			);
@@ -191,5 +191,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'Edit My Profile', 'buddypress' ),
+				'title'  => __( 'Edit', 'buddypress' ),
 				'href'   => trailingslashit( $profile_link . 'edit' )
 			);
@@ -198,5 +198,5 @@
 			$wp_admin_nav[] = array(
 				'parent' => 'my-account-' . $this->id,
-				'title'  => __( 'Change My Avatar', 'buddypress' ),
+				'title'  => __( 'Change Avatar', 'buddypress' ),
 				'href'   => trailingslashit( $profile_link . 'change-avatar' )
 			);
