From 88447c91afb96bffbc1111c6740883cd4509f5ea Mon Sep 17 00:00:00 2001 From: David Greenspan Date: Tue, 1 Jul 2014 13:59:41 -0700 Subject: [PATCH] Shave 10 seconds off test runs with DevTools open MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Chrome’s “async stack traces” feature makes addEventListener a little slower. DOMBackend’s teardown listeners were causing unnecessary calls to addEventListener in jQuery. Tell jQuery not to do that. --- packages/blaze/dombackend.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/blaze/dombackend.js b/packages/blaze/dombackend.js index 1198c2a49f..f60e101164 100644 --- a/packages/blaze/dombackend.js +++ b/packages/blaze/dombackend.js @@ -110,6 +110,12 @@ DOMBackend.Teardown = { }; $jq.event.special[DOMBackend.Teardown._JQUERY_EVENT_NAME] = { + setup: function () { + // This "setup" callback is important even though it is empty! + // Without it, jQuery will call addEventListener, which is a + // performance hit, especially with Chrome's async stack trace + // feature enabled. + }, teardown: function() { var elem = this; var callbacks = elem[DOMBackend.Teardown._CB_PROP];