? dblclick_dhtml_menu_support.patch
Index: dblclick.js
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/dblclick/dblclick.js,v
retrieving revision 1.10
diff -u -p -r1.10 dblclick.js
--- dblclick.js	12 Dec 2006 18:25:29 -0000	1.10
+++ dblclick.js	14 Jan 2007 05:22:46 -0000
@@ -2,7 +2,7 @@
 
 Drupal.dblClick = new Object();
 
-Drupal.dblClick.clicker = function(e){
+Drupal.dblClick.clicker = function(e) {
   var self = this;
   if (!e.metaKey && !e.ctrlKey) { // don't do this stuff if meta or control key is pressed
 	  var doClick = function() {
@@ -20,7 +20,7 @@ Drupal.dblClick.clicker = function(e){
   }
 }
 
-Drupal.dblClick.dblClicker = function(e){
+Drupal.dblClick.dblClicker = function(e) {
   var self = this;
   window.clearTimeout(Drupal.dblClick.clickTimer);
   var arg = (self.href.indexOf('?') == -1) ? '?dbl=true' : '&dbl=true';
@@ -37,15 +37,19 @@ Drupal.dblClick.dblClicker = function(e)
   arg += e.shiftKey ? '&shift=true' : '';
   arg += e.altKey ? '&alt=true' : '';
   arg += Drupal.settings.dblClick.dblDest ? Drupal.settings.dblClick.dblDest : '';
-  location.href = path + arg + frag ;
+  location.href = path + arg + frag;
   return false;
 }
 
 if (Drupal.jsEnabled) {
-  $(document).ready(function(){
+  // jQuery sweetness by the real John Resig.
+  jQuery.expr[":"].exclude = "$(m[3]).index(a)<0";
+  
+  $(document).ready(function() {
     // find all of the internal (relative) links
     // move their old click behaviors into 'oldclick' so we can execute it later
-    $("a[@href]").not("[@href*=':']").not("[@onclick]")
+    // exclude blocks from dhtml_menu module because of conflicts
+    $('a[@href]:not("[@href*=":"]):not([@onclick]):exclude(div[@id^="block-dhtml_menu"] a)')
       .each(function(){this.oldclick = this.onclick})
       .unclick()
       .click(Drupal.dblClick.clicker)
