? dhtml_menu.registry.inc
Index: dhtml_menu.admin.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dhtml_menu/dhtml_menu.admin.inc,v
retrieving revision 1.13
diff -u -p -r1.13 dhtml_menu.admin.inc
--- dhtml_menu.admin.inc	20 Aug 2009 19:10:24 -0000	1.13
+++ dhtml_menu.admin.inc	21 Aug 2009 07:58:04 -0000
@@ -82,6 +82,16 @@ function dhtml_menu_settings(&$form_stat
     '#default_value' => $settings['effects']['children'],
   );
 
+  $options['effects']['remember'] = array(
+    '#type' => 'radios',
+    '#title' => t('When a new page is loaded'),
+    '#options' => array(
+      'remember' => t('Remember which items were expanded on the last page.'),
+      0 => t('Expand only the currently active path.'),
+    ),
+    '#default_value' => $settings['effects']['remember'],
+  );
+
   $options['filter'] = array();
 
   $options['filter']['list'] = array(
Index: dhtml_menu.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dhtml_menu/dhtml_menu.js,v
retrieving revision 1.33
diff -u -p -r1.33 dhtml_menu.js
--- dhtml_menu.js	20 Aug 2009 19:10:24 -0000	1.33
+++ dhtml_menu.js	21 Aug 2009 07:58:05 -0000
@@ -24,16 +24,18 @@ Drupal.behaviors.dhtmlMenu = {
 
     // Sanitize by removing "expanded" on menus already marked "collapsed". 
     $('li.dhtml-menu.collapsed.expanded').removeClass('expanded');
-    var cookie = Drupal.dhtmlMenu.cookieGet();
-    for (var i in cookie) {
-      // If the cookie was not applied to the HTML code yet, do so now.
-      var li = $('#dhtml_menu-' + cookie[i]).parents('li:first');
-      if ($(li).hasClass('collapsed')) {
-        Drupal.dhtmlMenu.toggleMenu(li, $(li).find('a:first'), $(li).find('ul:first'));
+    var settings = Drupal.settings.dhtmlMenu;
+
+    if (settings.effects.remember) {
+      var cookie = Drupal.dhtmlMenu.cookieGet();
+      for (var i in cookie) {
+        // If the cookie was not applied to the HTML code yet, do so now.
+        var rememberedItems = $('#dhtml_menu-' + cookie[i]).parents('li:first');
+        if (rememberedItems.hasClass('collapsed')) {
+          Drupal.dhtmlMenu.toggleMenu(li, $(li).find('a:first'), $(li).find('ul:first'));
+        }
       }
     }
-  
-    var settings = Drupal.settings.dhtmlMenu;
 
     if (settings.nav == 'bullet') {
       // Create the markup for the bullet overlay, and the amount to shift it to the right in RTL mode.
Index: dhtml_menu.theme.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dhtml_menu/dhtml_menu.theme.inc,v
retrieving revision 1.6
diff -u -p -r1.6 dhtml_menu.theme.inc
--- dhtml_menu.theme.inc	20 Aug 2009 09:44:22 -0000	1.6
+++ dhtml_menu.theme.inc	21 Aug 2009 07:58:05 -0000
@@ -50,7 +50,8 @@ function dhtml_menu_theme_menu_item($lin
   global $theme;
   static $cookie, $function;
   if (!isset($cookie)) {
-    $cookie = explode(',', @$_COOKIE['dhtml_menu']);
+    $settings = variable_get('dhtml_menu_settings');
+    $cookie = $settings['effects']['remember'] ? explode(',', @$_COOKIE['dhtml_menu']) : array();
     $registry = variable_get('dhtml_menu_theme', array());
     $function = isset($registry[$theme]) && drupal_function_exists($registry[$theme]['menu_item']) ? $registry[$theme]['menu_item'] : 'theme_menu_item';
   }
