author James Teh <>
Wed, 01 Feb 2023 05:02:01 +0000
changeset 651150 dd0fdd1daa69783be36acd5c50544f3694eaa8f9
parent 622588 2a9c00e6bdde2d0b38ae9bb131916f74e1f48582
permissions -rw-r--r--
Bug 1813980: Check IsDoc before Parent in RemoteAccessibleBase::ApplyCrossDocOffset. r=morgan We call this function on every ancestor when calculating bounds. RemoteParent() currently requires a hash lookup, so it's more efficient to early return for !IsDoc() first. This is a micro-optimisation, but it might have some impact given that we call this on every ancestor, especially when hit testing, where we call Bounds() a lot. As a bit of drive-by cleanup, use RemoteParent() rather than calling Parent() and IsRemote/AsRemote(). Differential Revision:


  <meta charset="utf-8">
  <title>Tests related to scrollframe activation</title>
  <script src="/tests/SimpleTest/SimpleTest.js"></script>
  <script type="application/javascript" src="apz_test_native_event_utils.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">
    if (isApzEnabled()) {

      let prefs = [
        ["apz.test.logging_enabled", true]

      var subtests = [
        { file: "helper_scrollframe_activation_on_load.html", prefs },
        { file: "helper_bug982141.html", prefs },

      if (getPlatform() != "android") {
        // promiseMoveMouseAndScrollWheelOver in helper_check_dp_size doesn't
        // work on android. Trying to use promiseNativeTouchDrag on android
        // leads to very large display ports (larger than even the bad case
        // below), not sure why.
          { file: "helper_check_dp_size.html", prefs }

      window.onload = function() {
          .then(SimpleTest.finish, SimpleTest.finishWithFailure);

  <a target="_blank" href="">Mozilla Bug 1151663</a>