summaryrefslogtreecommitdiffstats
path: root/gfx/layers/apz/test/mochitest/test_group_zoom.html
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 00:47:55 +0000
commit26a029d407be480d791972afb5975cf62c9360a6 (patch)
treef435a8308119effd964b339f76abb83a57c29483 /gfx/layers/apz/test/mochitest/test_group_zoom.html
parentInitial commit. (diff)
downloadfirefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz
firefox-26a029d407be480d791972afb5975cf62c9360a6.zip
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'gfx/layers/apz/test/mochitest/test_group_zoom.html')
-rw-r--r--gfx/layers/apz/test/mochitest/test_group_zoom.html80
1 files changed, 80 insertions, 0 deletions
diff --git a/gfx/layers/apz/test/mochitest/test_group_zoom.html b/gfx/layers/apz/test/mochitest/test_group_zoom.html
new file mode 100644
index 0000000000..03f9bbebf8
--- /dev/null
+++ b/gfx/layers/apz/test/mochitest/test_group_zoom.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <meta charset="utf-8">
+ <title>Various zoom-related tests that spawn in new windows</title>
+ <script src="/tests/SimpleTest/SimpleTest.js"></script>
+ <script type="application/javascript" src="apz_test_utils.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
+ <script type="application/javascript">
+
+var prefs = [
+ // We need the APZ paint logging information
+ ["apz.test.logging_enabled", true],
+ // Dropping the touch slop to 0 makes the tests easier to write because
+ // we can just do a one-pixel drag to get over the pan threshold rather
+ // than having to hard-code some larger value.
+ ["apz.touch_start_tolerance", "0.0"],
+ // The subtests in this test do touch-drags to pan the page, but we don't
+ // want those pans to turn into fling animations, so we increase the
+ // fling-min threshold velocity to an arbitrarily large value.
+ ["apz.fling_min_velocity_threshold", "10000"],
+ // The helper_bug1280013's div gets a displayport on scroll, but if the
+ // test takes too long the displayport can expire before we read the value
+ // out of the test. So we disable displayport expiry for these tests.
+ ["apz.displayport_expiry_ms", 0],
+ // Increase the content response timeout because some tests do preventDefault
+ // and we want to make sure APZ actually waits for them.
+ ["apz.content_response_timeout", 60000],
+ // Disable touch resampling so that touch events are processed without delay
+ // and we don't zoom more than expected due to overprediction.
+ ["android.touch_resampling.enabled", false],
+];
+
+// Increase the tap timeouts so the one-touch-pinch gesture is still detected
+// in case of random delays during testing. Also ensure that the feature is
+// actually enabled (which it should be by default, but it's good to be safe).
+var onetouchpinch_prefs = [
+ ...prefs,
+ ["apz.one_touch_pinch.enabled", true],
+ ["ui.click_hold_context_menus.delay", 10000],
+ ["apz.max_tap_time", 10000],
+];
+
+// For helper_fixed_pos_displayport the mechanism we use to record the
+// fixed-pos displayport only takes effect when not in a partial display list
+// update. So for this test we just disable retained display lists entirely.
+var no_rdl_prefs = [
+ ...prefs,
+ ["layout.display-list.retain", false],
+];
+
+var subtests = [
+ {"file": "helper_basic_zoom.html", "prefs": prefs},
+ {"file": "helper_basic_onetouchpinch.html", "prefs": onetouchpinch_prefs},
+ {"file": "helper_zoom_prevented.html", "prefs": prefs},
+ {"file": "helper_zoomed_pan.html", "prefs": prefs},
+ {"file": "helper_fixed_position_scroll_hittest.html", "prefs": prefs},
+ {"file": "helper_onetouchpinch_nested.html", "prefs": onetouchpinch_prefs},
+ {"file": "helper_visual_smooth_scroll.html", "prefs": prefs},
+ {"file": "helper_scroll_into_view_bug1516056.html", "prefs": prefs},
+ {"file": "helper_scroll_into_view_bug1562757.html", "prefs": prefs},
+ {"file": "helper_fixed_pos_displayport.html", "prefs": no_rdl_prefs},
+ // If you're adding more tests, add them to test_group_zoom-2.html
+];
+
+if (isApzEnabled()) {
+ // This has a lot of subtests, and Android emulators are slow.
+ SimpleTest.requestLongerTimeout(2);
+ SimpleTest.waitForExplicitFinish();
+ window.onload = function() {
+ runSubtestsSeriallyInFreshWindows(subtests)
+ .then(SimpleTest.finish, SimpleTest.finishWithFailure);
+ };
+}
+
+ </script>
+</head>
+<body>
+</body>
+</html>