| Index: third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html
|
| diff --git a/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html b/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html
|
| index 7cf88e8f7ec042942d72359252892e7fcb3d6351..99c036514df4a694aa1531f15f3a34195c5f152e 100644
|
| --- a/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html
|
| +++ b/third_party/WebKit/LayoutTests/fast/events/touch/touch-handler-count.html
|
| @@ -36,17 +36,24 @@ debug("Test setting touch handlers on the document.");
|
| document.ontouchmove = function() {}
|
| document.ontouchend = function() {}
|
| document.ontouchcancel = function() {}
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| document.ontouchstart = function() { }
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| document.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| document.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| - document.ontouchmove = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| document.ontouchend = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
| + document.ontouchmove = null;
|
| document.ontouchcancel = null;
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
| })();
|
|
|
| debug("Test addEventListener/removeEventListener on the window.");
|
| @@ -82,17 +89,24 @@ debug("Test setting touch handlers on the window.");
|
| window.ontouchmove = function() {}
|
| window.ontouchend = function() {}
|
| window.ontouchcancel = function() {}
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| window.ontouchstart = function() { }
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| window.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| window.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| - window.ontouchmove = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| window.ontouchend = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
| + window.ontouchmove = null;
|
| window.ontouchcancel = null;
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
| })();
|
|
|
| debug("Test addEventListener/removeEventListener on a div.");
|
| @@ -131,17 +145,24 @@ debug("Test setting touch handlers on a div.");
|
| div.ontouchmove = function() { }
|
| div.ontouchend = function() { }
|
| div.ontouchcancel = function() { }
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| div.ontouchstart = function() { }
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| div.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| div.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| - div.ontouchmove = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
| div.ontouchend = null;
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
| + div.ontouchmove = null;
|
| div.ontouchcancel = null;
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
| })();
|
|
|
| debug("Test redudant addEventListener on a div.");
|
| @@ -167,29 +188,34 @@ debug("Test addEventListener/removeEventListener on a new div.");
|
| var listener = function() { }
|
|
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
|
|
| div.addEventListener('touchstart', listener, true);
|
| div.addEventListener('touchmove', listener, true);
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
|
|
| touchtarget.appendChild(div);
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
|
|
| div.addEventListener('touchend', listener, true);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
|
|
| div.removeEventListener('touchstart', listener, true);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
|
|
| touchtarget.removeChild(div);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
|
|
| div.removeEventListener('touchmove', listener, false);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
|
|
| div.removeEventListener('touchmove', listener, true);
|
| div.removeEventListener('touchend', listener, true);
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
| })();
|
|
|
| debug("Test setting touch handlers on a new div.");
|
| @@ -205,19 +231,24 @@ debug("Test setting touch handlers on a new div.");
|
|
|
| touchtarget.appendChild(div);
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
|
|
| div.ontouchend = function() { }
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
|
|
| div.ontouchstart = null;
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
|
|
| touchtarget.removeChild(div);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
|
|
| div.ontouchend = null;
|
| div.ontouchmove = null;
|
| shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '0');
|
| })();
|
|
|
| var nestedDocument;
|
| @@ -228,7 +259,8 @@ debug("Test that nested Documents' touch handlers are properly tracked in their
|
| var touchtarget = document.getElementById('touchtarget');
|
| touchtarget.ontouchend = function() {};
|
|
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
|
|
| touchtarget.appendChild(iframe);
|
|
|
| @@ -236,25 +268,34 @@ debug("Test that nested Documents' touch handlers are properly tracked in their
|
| nestedDocument.open('text/html', 'replace');
|
| nestedDocument.write('<!DOCTYPE html>\n<script>\nwindow.ontouchstart=function(){};\n</' + 'script>\n' +
|
| '<div id=twoHandlers ontouchmove="function(){}" ontouchcancel="function(){}"></div>');
|
| - shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '4');
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
|
|
| nestedDocument.write('<script>window.ontouchstart=undefined</' + 'script>\n');
|
| - shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '3');
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '3');
|
| + shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
|
|
| nestedDocument.write('<script>document.addEventListener("touchmove", function(){});</' + 'script>\n');
|
| - shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '4');
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '4');
|
| + shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '2');
|
|
|
| nestedDocument.write('<script>document.getElementById("twoHandlers").remove();</' + 'script>\n');
|
| gc();
|
| - shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '2');
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '2');
|
| + shouldBe('window.internals.touchEventHandlerCount(nestedDocument)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(nestedDocument)', '1');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
| nestedDocument.close();
|
|
|
| touchtarget.removeChild(iframe);
|
| - shouldBe('window.internals.touchEventHandlerCount(document)', '1');
|
| + shouldBe('window.internals.touchEventHandlerCount(document)', '0');
|
| + shouldBe('window.internals.touchEndOrCancelEventHandlerCount(document)', '1');
|
| })();
|
| </script>
|
| </body>
|
|
|