https://bugs.webkit.org/show_bug.cgi?id=150896
<rdar://problem/
23344491>
Reviewed by Simon Fraser.
Source/WebKit2:
In order for the modified fast-clicking tests to pass, we can't allow hit-testing to
find the tap highlight view. See the Radar for more UIKit-specific descriptions.
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _showTapHighlight]):
LayoutTests:
Fix the fast-clicking tests by making them fire an exact number of times rather than
sending continuously until a minimum number of clicks are fired. This causes us to
avoid crashing during the following test when the marker events corresponding to single
taps fired after the test has completed have been handled.
* css3/touch-action/touch-action-manipulation-fast-clicks.html:
* fast/events/ios/viewport-device-width-at-initial-scale-fast-clicks.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@192036
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2015-11-04 Wenson Hsieh <wenson_hsieh@apple.com>
+
+ Fix crashing fast-clicking WK2 tests on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=150896
+ <rdar://problem/23344491>
+
+ Reviewed by Simon Fraser.
+
+ Fix the fast-clicking tests by making them fire an exact number of times rather than
+ sending continuously until a minimum number of clicks are fired. This causes us to
+ avoid crashing during the following test when the marker events corresponding to single
+ taps fired after the test has completed have been handled.
+
+ * css3/touch-action/touch-action-manipulation-fast-clicks.html:
+ * fast/events/ios/viewport-device-width-at-initial-scale-fast-clicks.html:
+
2015-10-30 Keith Miller <keith_miller@apple.com>
Fix endless OSR exits when creating a rope that contains an object that ToPrimitive's to a number.
<script src="../../resources/js-test-pre.js"></script>
<script id="ui-script" type="text/plain">
(function() {
- function performTap() {
- uiController.singleTapAtPoint(200, 200, performTap);
+ var count = 0;
+ function fireSuccessiveTaps() {
+ if (count < 3)
+ uiController.singleTapAtPoint(200, 200, fireSuccessiveTaps);
+ else
+ uiController.uiScriptComplete("");
+
+ count++;
}
- performTap();
+ fireSuccessiveTaps();
})();
</script>
<script>
+ var scriptCompleted = false;
var clickCount = 0;
if (window.testRunner)
testRunner.waitUntilDone();
function runTest() {
if (testRunner.runUIScript)
- testRunner.runUIScript(getUIScript(), function(result) { });
+ testRunner.runUIScript(getUIScript(), function(result) {
+ scriptCompleted = true;
+ if (clickCount == 3)
+ testRunner.notifyDone();
+ });
}
function handleClicked() {
clickCount++;
document.body.appendChild(document.createTextNode("Click!"));
document.body.appendChild(document.createElement("br"));
- if (clickCount == 3)
+ if (clickCount == 3 && scriptCompleted)
testRunner.notifyDone();
}
</script>
<script src="../../../resources/js-test-pre.js"></script>
<script id="ui-script" type="text/plain">
(function() {
- uiController.didEndZoomingCallback = function() {
- uiController.uiScriptComplete("FAIL: Zoomed to scale " + uiController.zoomScale + " when we should only be firing fast clicks.");
- };
+ var count = 0;
+ function fireSuccessiveTaps() {
+ if (count < 3)
+ uiController.singleTapAtPoint(200, 200, fireSuccessiveTaps);
+ else
+ uiController.uiScriptComplete("");
- function fireSuccessiveSingleTaps() {
- uiController.singleTapAtPoint(200, 200, fireSuccessiveSingleTaps);
+ count++;
}
- fireSuccessiveSingleTaps();
+ fireSuccessiveTaps();
})();
</script>
<script>
+ var scriptCompleted = false;
var clickCount = 0;
if (window.testRunner)
testRunner.waitUntilDone();
function runTest() {
if (testRunner.runUIScript)
- testRunner.runUIScript(getUIScript(), function(result) { });
+ testRunner.runUIScript(getUIScript(), function(result) {
+ scriptCompleted = true;
+ if (clickCount == 3)
+ testRunner.notifyDone();
+ });
}
function handleClicked() {
clickCount++;
document.body.appendChild(document.createTextNode("Click!"));
document.body.appendChild(document.createElement("br"));
- if (clickCount == 3)
+ if (clickCount == 3 && scriptCompleted)
testRunner.notifyDone();
}
</script>
+2015-11-04 Wenson Hsieh <wenson_hsieh@apple.com>
+
+ Fix crashing fast-clicking WK2 tests on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=150896
+ <rdar://problem/23344491>
+
+ Reviewed by Simon Fraser.
+
+ In order for the modified fast-clicking tests to pass, we can't allow hit-testing to
+ find the tap highlight view. See the Radar for more UIKit-specific descriptions.
+
+ * UIProcess/ios/WKContentViewInteraction.mm:
+ (-[WKContentView _showTapHighlight]):
+
2015-11-03 Anders Carlsson <andersca@apple.com>
PageLoadState::will/didChangeProcessIsResponsive should call observers
if (!_highlightView) {
_highlightView = adoptNS([[_UIHighlightView alloc] initWithFrame:CGRectZero]);
+ [_highlightView setUserInteractionEnabled:NO];
[_highlightView setOpaque:NO];
[_highlightView setCornerRadius:minimumTapHighlightRadius];
}