diff --git a/ui/ui.core.js b/ui/ui.core.js index 70fab6e26..a6e76436d 100644 --- a/ui/ui.core.js +++ b/ui/ui.core.js @@ -412,6 +412,9 @@ $.ui.mouse = { }, _mouseDown: function(event) { + // don't let more than one widget handle mouseStart + if (event.originalEvent.mouseHandled) { return; } + // we may have missed mouseup (out of window) (this._mouseStarted && this._mouseUp(event)); @@ -455,11 +458,7 @@ $.ui.mouse = { // anymore, so this fix is needed ($.browser.safari || event.preventDefault()); - // was changed to return true in rev 1000 because that allows the - // event to bubble - however, exactly that causes much pain for - // nested widgets, so we call stopPropagation(). Building a work- - // around for the above is much easier. - event.stopPropagation(); + event.originalEvent.mouseHandled = true; return true; },