From 1645df09eac277f29e5ef8e7b6980a3dcedd743e Mon Sep 17 00:00:00 2001 From: "L. David Baron" Date: Fri, 31 Jul 2009 14:36:57 -0700 Subject: [PATCH] Backed out changeset 8cd49a8cbb88 (bug 501608) on suspicion of causing lots of mochitest-browser-chrome timeouts and leaks (bug 507698). --- toolkit/content/tests/browser/Makefile.in | 6 - .../browser_keyevents_during_autoscrolling.js | 118 ------------------ toolkit/content/widgets/browser.xml | 24 +--- 3 files changed, 1 insertion(+), 147 deletions(-) delete mode 100644 toolkit/content/tests/browser/browser_keyevents_during_autoscrolling.js diff --git a/toolkit/content/tests/browser/Makefile.in b/toolkit/content/tests/browser/Makefile.in index f01914c6d6e..20da998b2a8 100644 --- a/toolkit/content/tests/browser/Makefile.in +++ b/toolkit/content/tests/browser/Makefile.in @@ -50,11 +50,5 @@ _BROWSER_FILES = \ browser_bug471962.js \ $(NULL) -# browser_keyevents_during_autoscrolling.js cannot start the autoscrolling by -# synthesizeMouse with middle button on linux, therefore, disable it temporarily -ifneq ($(MOZ_WIDGET_TOOLKIT),gtk2) -_BROWSER_FILES += browser_keyevents_during_autoscrolling.js -endif - libs:: $(_BROWSER_FILES) $(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/browser/$(relativesrcdir) diff --git a/toolkit/content/tests/browser/browser_keyevents_during_autoscrolling.js b/toolkit/content/tests/browser/browser_keyevents_during_autoscrolling.js deleted file mode 100644 index c94ef68e07d..00000000000 --- a/toolkit/content/tests/browser/browser_keyevents_during_autoscrolling.js +++ /dev/null @@ -1,118 +0,0 @@ -function test() -{ - const kPrefName_AutoScroll = "general.autoScroll"; - const kPrefName_ContentLoadURL = "middlemouse.contentLoadURL"; - var prefSvc = Components.classes["@mozilla.org/preferences-service;1"] - .getService(Components.interfaces.nsIPrefBranch2); - var kAutoScrollingEnabled = prefSvc.getBoolPref(kPrefName_AutoScroll); - prefSvc.setBoolPref(kPrefName_AutoScroll, true); - - const kNoKeyEvents = 0; - const kKeyDownEvent = 1; - const kKeyPressEvent = 2; - const kKeyUpEvent = 4; - const kAllKeyEvents = 7; - - var expectedKeyEvents; - var dispatchedKeyEvents; - var key; - var root; - - function sendKey(aKey) - { - key = aKey; - dispatchedKeyEvents = kNoKeyEvents; - EventUtils.synthesizeKey(key, {}, gBrowser.contentWindow); - is(dispatchedKeyEvents, expectedKeyEvents, - "unexpected key events were dispatched or not dispatched: " + key); - } - - function onKey(aEvent) - { - if (aEvent.target != root) { - ok(false, "unknown target: " + aEvent.target.tagName); - return; - } - - var keyFlag; - switch (aEvent.type) { - case "keydown": - keyFlag = kKeyDownEvent; - break; - case "keypress": - keyFlag = kKeyPressEvent; - break; - case "keyup": - keyFlag = kKeyUpEvent; - break; - default: - ok(false, "Unknown events: " + aEvent.type); - return; - } - dispatchedKeyEvents |= keyFlag; - is(keyFlag, expectedKeyEvents & keyFlag, aEvent.type + " fired: " + key); - } - - function startTest() { - waitForExplicitFinish(); - gBrowser.addEventListener("load", onLoad, false); - var dataUri = 'data:text/html,'; - gBrowser.loadURI(dataUri); - } - - function onLoad() { - gBrowser.removeEventListener("load", onLoad, false); - - gBrowser.contentWindow.focus(); - - var doc = gBrowser.contentDocument; - - root = doc.documentElement; - root.addEventListener("keydown", onKey, true); - root.addEventListener("keypress", onKey, true); - root.addEventListener("keyup", onKey, true); - - // Test whether the key events are handled correctly under normal condition - expectedKeyEvents = kAllKeyEvents; - sendKey("A"); - - // Start autoscrolling by middle button lick on the page - EventUtils.synthesizeMouse(root, 10, 10, { button: 1 }, - gBrowser.contentWindow); - - // Most key events should be eaten by the browser. - expectedKeyEvents = kNoKeyEvents; - sendKey("A"); - sendKey("VK_DOWN"); - sendKey("VK_RETURN"); - sendKey("VK_ENTER"); - sendKey("VK_HOME"); - sendKey("VK_END"); - sendKey("VK_TAB"); - sendKey("VK_ENTER"); - - // Finish autoscrolling by ESC key. Note that only keydown and keypress - // events are eaten because keyup event is fired *after* the autoscrolling - // is finished. - expectedKeyEvents = kKeyUpEvent; - sendKey("VK_ESCAPE"); - - // Test whether the key events are handled correctly under normal condition - expectedKeyEvents = kAllKeyEvents; - sendKey("A"); - - root.removeEventListener("keydown", onKey, true); - root.removeEventListener("keypress", onKey, true); - root.removeEventListener("keyup", onKey, true); - - // restore the changed prefs - prefSvc.setBoolPref(kPrefName_AutoScroll, kAutoScrollingEnabled); - - // cleaning-up - gBrowser.loadURI("about:blank"); - - finish(); - } - - startTest(); -} diff --git a/toolkit/content/widgets/browser.xml b/toolkit/content/widgets/browser.xml index fdd6cd78ef7..12a73b2b84c 100644 --- a/toolkit/content/widgets/browser.xml +++ b/toolkit/content/widgets/browser.xml @@ -757,9 +757,6 @@ window.removeEventListener("mousedown", this, true); window.removeEventListener("mouseup", this, true); window.removeEventListener("contextmenu", this, true); - window.removeEventListener("keydown", this, true); - window.removeEventListener("keypress", this, true); - window.removeEventListener("keyup", this, true); clearInterval(this._autoScrollTimer); } ]]> @@ -770,7 +767,7 @@ @@ -831,9 +828,6 @@ window.addEventListener("mousedown", this, true); window.addEventListener("mouseup", this, true); window.addEventListener("contextmenu", this, true); - window.addEventListener("keydown", this, true); - window.addEventListener("keypress", this, true); - window.addEventListener("keyup", this, true); this._scrollErrorX = 0; this._scrollErrorY = 0; @@ -957,22 +951,6 @@ this.stopScroll(); break; } - case "keypress": { - if (aEvent.keyCode == aEvent.DOM_VK_ESCAPE) { - // the escape key will be processed by - // nsXULPopupManager::KeyPress and the panel will be closed. - // So, nothing to do here. - break; - } - // don't break here. we need to eat keypress events. - } - case "keydown": - case "keyup": { - // All keyevents should be eaten here during autoscrolling. - aEvent.stopPropagation(); - aEvent.preventDefault(); - break; - } } } ]]>