? 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;