Index: dynamic_persistent_menu.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dynamic_persistent_menu/Attic/dynamic_persistent_menu.install,v
retrieving revision 1.1.2.1
diff -u -r1.1.2.1 dynamic_persistent_menu.install
--- dynamic_persistent_menu.install	31 Dec 2008 22:45:56 -0000	1.1.2.1
+++ dynamic_persistent_menu.install	27 May 2009 06:44:20 -0000
@@ -7,4 +7,5 @@
 function dynamic_persistent_menu_uninstall() {
   variable_del('dynamic_persistent_menu_menu_root');
   variable_del('dynamic_persistent_menu_sub_menu_timeout');
+  variable_del('dynamic_persistent_menu_sub_always_hidden');
 }
\ No newline at end of file
Index: dynamic_persistent_menu.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dynamic_persistent_menu/dynamic_persistent_menu.module,v
retrieving revision 1.1.4.7
diff -u -r1.1.4.7 dynamic_persistent_menu.module
--- dynamic_persistent_menu.module	9 Jan 2009 05:08:38 -0000	1.1.4.7
+++ dynamic_persistent_menu.module	27 May 2009 06:44:20 -0000
@@ -36,12 +36,19 @@
             '#default_value' => variable_get('dynamic_persistent_menu_sub_menu_timeout', 2000),
             '#description' => t('Time before menu hiding when the mouse pointer leaves the parent menu (in milliseconds)')
           );
+        $form['dynamic_persistent_menu_sub_always_hidden'] = array(
+            '#type' => 'checkbox',
+            '#title' => t('Always hide submenus'),
+            '#default_value' => variable_get('dynamic_persistent_menu_sub_always_hidden', 0),
+            '#description' => t('Controls whether the submenu will be hidden when the current url is the parent menu - default is off (disables successful javascript degradation)'),
+          );
           
           return $form;
       
       case 'save':
         variable_set('dynamic_persistent_menu_menu_root', $edit['dynamic_persistent_menu_menu_root']);
         variable_set('dynamic_persistent_menu_sub_menu_timeout', (int) $edit['dynamic_persistent_menu_sub_menu_timeout']);
+        variable_set('dynamic_persistent_menu_sub_always_hidden', (int) $edit['dynamic_persistent_menu_sub_always_hidden']);
         break;
   }
 }
@@ -127,7 +134,7 @@
     $link = $menu_item['link'];
     if ($link['hidden'] == 0) {
       if($link['has_children']) {
-        if (is_array($trail) && in_array($link['mlid'], $trail)) {
+        if (is_array($trail) && in_array($link['mlid'], $trail) && !variable_get('dynamic_persistent_menu_sub_always_hidden',0)) {
           $display = 'block';
           $over_menu_default = $link['mlid'];
         }
