--- admin_menu_dropdown.module	2008-06-25 19:20:08.000000000 +1200
+++ admin_menu_dropdown.module	2008-12-09 02:01:57.000000000 +1300
@@ -16,7 +16,13 @@ function admin_menu_dropdown_init() {
     $js = '';
 
     $js .= "amdBehavior = '". variable_get('admin_menu_dropdown_behavior', 'amd_key_combo') ."'; ";
-    $js .= "amdHidden = ". (variable_get('admin_menu_dropdown_hide', TRUE) ? "1" : "0") ."; ";
+    // Checks if visibility has already been modified by user during session and if so respects current visibility
+    if (isset($_COOKIE['drupal_admin_menu_hidden'])) {
+      $js .= "amdHidden = ". $_COOKIE['drupal_admin_menu_hidden'] ."; ";
+    } else {
+    // Otherwise, sets visibility to default value specified in module configuration
+      $js .= "amdHidden = ". (variable_get('admin_menu_dropdown_hide', TRUE) ? "1" : "0") ."; ";
+    }
     $js .= "amdPosition = '". variable_get('admin_menu_dropdown_position', 'fixed') ."'; ";
 
     // Add behavior specific CSS
@@ -59,9 +65,9 @@ function admin_menu_dropdown_form_alter(
     );
     $form['admin_menu_dropdown']['admin_menu_dropdown_hide'] = array(
       '#type' => 'checkbox',
-      '#title' => t('Hide admin menu by default'),
+      '#title' => t('Hide admin menu by default for new sessions'),
       '#default_value' => variable_get('admin_menu_dropdown_hide', TRUE),
-      '#description' => t('If checked the Administration menu is hidden by default'),
+      '#description' => t('If checked the Administration menu is hidden by default when you start a new session. The menu maintains any changes to visibility you make during a session.'),
     );
     $form['admin_menu_dropdown']['admin_menu_dropdown_position'] = array(
       '#type' => 'select',


--- behaviors/key_combo/key_combo.js	2008-07-10 19:13:56.000000000 +1200
+++ behaviors/key_combo/key_combo.js	2008-12-09 02:02:02.000000000 +1300
@@ -17,10 +17,12 @@ amd_key_combo = {
         if (amdHidden == 0) {
           $("div#admin-menu").hide();
           amdHidden = 1;
+          document.cookie ='drupal_admin_menu_hidden=1';
         }
         else {
           $("div#admin-menu").show();
           amdHidden = 0;
+          document.cookie ='drupal_admin_menu_hidden=0';
         }
       }
 
