? dblclick_dhtml_menu_support.patch
Index: dblclick.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dblclick/dblclick.js,v
retrieving revision 1.4.2.1
diff -u -p -r1.4.2.1 dblclick.js
--- dblclick.js	19 Nov 2006 04:30:17 -0000	1.4.2.1
+++ dblclick.js	11 Jan 2007 23:40:22 -0000
@@ -1,22 +1,22 @@
 // $Id: dblclick.js,v 1.4.2.1 2006/11/19 04:30:17 jjeff Exp $
 var clickTimer;
-var clicker = function(e){
+var clicker = function(e) {
   var self = this;
   var doClick = function() {
     location.href = self.href;
   }
-  window.clearTimeout( clickTimer );
+  window.clearTimeout(clickTimer);
   clickTimer = window.setTimeout(doClick, 300);
   return false;
 }
 
-var dblClicker = function(e){
+var dblClicker = function(e) {
   var self = this;
-  window.clearTimeout(clickTimer);
   var arg = (self.href.indexOf('?') == -1) ? '?dbl=true' : '&dbl=true';
   var parts = self.href.split('#');
   var path = parts.shift();
   var frag = parts.shift();
+  
   if (frag) {
     arg = arg + '&frag=' + frag;
     frag = '#' + frag;;
@@ -24,15 +24,21 @@ var dblClicker = function(e){
   else {
     frag = '';
   }
-  dest = dest ? dest : '';
+  
+  var dest = Drupal.settings.dblclick.dest ? Drupal.settings.dblclick.dest : '';
+  
+  window.clearTimeout(clickTimer);
   location.href = path + arg + dest + frag ;
   return false;
 }
 
 if (Drupal.jsEnabled) {
-  // find all of the internal (relative) links
-  $(document).ready(function(){
-    // remove current click behavior and add click and double click
-    $("a[@href]").not("[@href*=':']").unclick().click(clicker).dblclick(dblClicker);
+  // jQuery sweetness by the real John Resig.
+  jQuery.expr[":"].exclude = "$(m[3]).index(a)<0";
+  
+  // Find all of the internal (relative) links.
+  $(document).ready(function() {
+    // Remove current click behavior if not from the dhtml_menu.module and add new click events.
+    var links = $('a[@href]:not("[@href*=":"]):exclude(#block-dhtml_menu-1 a)').click(clicker).dblclick(dblClicker);
   });
 }
Index: dblclick.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dblclick/dblclick.module,v
retrieving revision 1.3.2.2
diff -u -p -r1.3.2.2 dblclick.module
--- dblclick.module	19 Nov 2006 22:04:39 -0000	1.3.2.2
+++ dblclick.module	11 Jan 2007 23:40:22 -0000
@@ -68,8 +68,7 @@ function dblclick_menu($may_cache) {
       drupal_add_js($path .'/dblclick.js');
       
       // add a little bit of "extra" information for javascript to use
-      $data = 'var dest = "&dbl'. drupal_get_destination() .'";';
-      drupal_add_js($data, 'inline');
+      drupal_add_js(array('dblclick' => array('dest' => drupal_get_destination())), 'setting');
     }
   }
   return $items;
