diff --git a/admin_select.module b/admin_select.module
index 2c28b27..3f1869f 100644
--- a/admin_select.module
+++ b/admin_select.module
@@ -340,6 +340,14 @@ function _admin_select_check_access(&$item) {
     }
   }
 
+  // Check that the callback exists.
+  if (!empty($item['include'])) {
+    include_once $item['include'];
+  }
+  if (!function_exists($item['suppress callback'])) {
+    $item['access'] = FALSE;
+  }
+
   return $item;
 }
 
@@ -365,6 +373,16 @@ function admin_select_admin_select_info() {
     );
   }
 
+  // Only support navbar if a version including https://drupal.org/node/1728726
+  // exists (version 7.x-1.0-beta1 or later).
+  if (module_exists('navbar') && !function_exists('navbar_admin_select_info')) {
+    $info['navbar'] = array(
+      'title' => t('Navigation toolbar'),
+      'access arguments' => array('access navbar'),
+      'suppress callback' => 'navbar_suppress',
+    );
+  }
+
   if (modue_exists('admin') && !function_exists('admin_admin_select_info')) {
     $info['admin'] = array(
       'title' => t('Admin module'),
