diff --git a/modules/dashboard/dashboard.module b/modules/dashboard/dashboard.module
index 4cf654f..252ad79 100644
--- a/modules/dashboard/dashboard.module
+++ b/modules/dashboard/dashboard.module
@@ -39,6 +39,7 @@ function dashboard_menu() {
     'description' => 'View and customize your dashboard.',
     'page callback' => 'dashboard_admin',
     'access arguments' => array('access dashboard'),
+    'menu_name' => 'management',
     // Make this appear first, so for example, in admin menus, it shows up on
     // the top corner of the window as a convenient "home link".
     'weight' => -15,
diff --git a/modules/help/help.module b/modules/help/help.module
index 53a9f71..d9131a7 100644
--- a/modules/help/help.module
+++ b/modules/help/help.module
@@ -14,6 +14,7 @@ function help_menu() {
     'description' => 'Reference for usage, configuration, and modules.',
     'page callback' => 'help_main',
     'access arguments' => array('access administration pages'),
+    'menu_name' => 'management',
     'weight' => 9,
     'file' => 'help.admin.inc',
   );
diff --git a/modules/node/node.module b/modules/node/node.module
index 04911de..f0ec617 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -1958,6 +1958,7 @@ function node_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('node_admin_content'),
     'access arguments' => array('access content overview'),
+    'menu_name' => 'management',
     'weight' => -10,
     'file' => 'node.admin.inc',
   );
diff --git a/modules/system/system.module b/modules/system/system.module
index d47ab8a..0e8c94c 100644
--- a/modules/system/system.module
+++ b/modules/system/system.module
@@ -553,7 +553,6 @@ function system_menu() {
     'access arguments' => array('access administration pages'),
     'page callback' => 'system_admin_menu_block_page',
     'weight' => 9,
-    'menu_name' => 'management',
     'file' => 'system.admin.inc',
   );
   $items['admin/compact'] = array(
@@ -581,6 +580,7 @@ function system_menu() {
   $items['admin/structure'] = array(
     'title' => 'Structure',
     'description' => 'Administer blocks, content types, menus, etc.',
+    'menu_name' => 'management',
     'position' => 'right',
     'weight' => -8,
     'page callback' => 'system_admin_menu_block_page',
@@ -593,6 +593,7 @@ function system_menu() {
     'description' => 'Select and configure your themes.',
     'page callback' => 'system_themes_page',
     'access arguments' => array('administer themes'),
+    'menu_name' => 'management',
     'position' => 'left',
     'weight' => -6,
     'file' => 'system.admin.inc',
@@ -660,6 +661,7 @@ function system_menu() {
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_modules'),
     'access arguments' => array('administer modules'),
+    'menu_name' => 'management',
     'file' => 'system.admin.inc',
     'weight' => -2,
   );
@@ -693,6 +695,7 @@ function system_menu() {
     'description' => 'Administer settings.',
     'page callback' => 'system_admin_config_page',
     'access arguments' => array('access administration pages'),
+    'menu_name' => 'management',
     'file' => 'system.admin.inc',
   );
 
@@ -1027,6 +1030,7 @@ function system_menu() {
     'description' => 'View reports, updates, and errors.',
     'page callback' => 'system_admin_menu_block_page',
     'access arguments' => array('access site reports'),
+    'menu_name' => 'management',
     'weight' => 5,
     'position' => 'left',
     'file' => 'system.admin.inc',
diff --git a/modules/toolbar/toolbar.module b/modules/toolbar/toolbar.module
index 6d1b581..60eb032 100644
--- a/modules/toolbar/toolbar.module
+++ b/modules/toolbar/toolbar.module
@@ -117,10 +117,12 @@ function _toolbar_is_collapsed() {
  * Add admin toolbar to the page_top region automatically.
  */
 function toolbar_page_build(&$page) {
+  $menu_name = isset($page['page_top']['toolbar']['menu_name']) ? $page['page_top']['toolbar']['menu_name'] : 'management';
   $page['page_top']['toolbar'] = array(
     '#pre_render' => array('toolbar_pre_render'),
     '#access' => user_access('access toolbar'),
     'toolbar_drawer' => array(),
+    'menu_name' => $menu_name,
   );
 }
 
@@ -131,7 +133,7 @@ function toolbar_page_build(&$page) {
  * rendering to ensure that it is built only if it will be displayed.
  */
 function toolbar_pre_render($toolbar) {
-  $toolbar = array_merge($toolbar, toolbar_view());
+  $toolbar = array_merge($toolbar, toolbar_view($toolbar['menu_name']));
   return $toolbar;
 }
 
@@ -181,7 +183,7 @@ function toolbar_system_info_alter(&$info, $file, $type) {
  * @return
  *   Array of links and settings relating to the admin menu.
  */
-function toolbar_view() {
+function toolbar_view($menu_name) {
   global $user;
 
   $module_path = drupal_get_path('module', 'toolbar');
@@ -203,7 +205,7 @@ function toolbar_view() {
   );
 
   // Retrieve the admin menu from the database.
-  $links = toolbar_menu_navigation_links(toolbar_get_menu_tree());
+  $links = toolbar_menu_navigation_links(toolbar_get_menu_tree($menu_name));
   $build['toolbar_menu'] = array(
     '#theme' => 'links__toolbar_menu',
     '#links' => $links,
@@ -281,17 +283,8 @@ function toolbar_view() {
  * @return
  *   An array containing a menu tree of top level items below the 'admin' path.
  */
-function toolbar_get_menu_tree() {
-  $tree = array();
-  $admin_link = db_query('SELECT * FROM {menu_links} WHERE menu_name = :menu_name AND module = :module AND link_path = :path', array(':menu_name' => 'management', ':module' => 'system', ':path' => 'admin'))->fetchAssoc();
-  if ($admin_link) {
-    $tree = menu_build_tree('management', array(
-      'expanded' => array($admin_link['mlid']),
-      'min_depth' => $admin_link['depth'] + 1,
-      'max_depth' => $admin_link['depth'] + 1,
-    ));
-  }
-
+function toolbar_get_menu_tree($menu_name) {
+  $tree = menu_tree_all_data($menu_name, NULL, 1);
   return $tree;
 }
 
diff --git a/modules/user/user.module b/modules/user/user.module
index c1c7ec2..13b7a1e 100644
--- a/modules/user/user.module
+++ b/modules/user/user.module
@@ -1662,6 +1662,7 @@ function user_menu() {
     'page callback' => 'user_admin',
     'page arguments' => array('list'),
     'access arguments' => array('administer users'),
+    'menu_name' => 'management',
     'position' => 'left',
     'weight' => -4,
     'file' => 'user.admin.inc',
