Skip to content
Snippets Groups Projects
  1. Mar 28, 2023
  2. Feb 06, 2023
  3. Feb 02, 2023
  4. Jan 27, 2023
  5. Jan 24, 2023
  6. Jan 23, 2023
  7. Nov 29, 2022
  8. Nov 23, 2022
  9. Sep 01, 2022
  10. Aug 30, 2022
    • Emilio Cobos Álvarez's avatar
      Bug 1786525 - Don't update untransformed anchor rect when moved by move-to-rect. r=stransky · fb638019
      Emilio Cobos Álvarez authored
      Otherwise, it changes the move-to-rect inputs, which can change the
      output as well, making us move the anchor all the way to the right.
      
      You could, I guess, consider this a mutter bug of sorts, because it
      feels weird that you pass it an anchor that has been a `move-to-rect`
      output and you get another rect as an output.
      
      But also, it's kinda silly that we're doing that to begin with, so avoid
      it by telling the popup frame whether it's been positioned / moved by
      move-to-rect (and keeping the anchor in that case).
      
      The reason this works on my setup without "Large text" is just dumb luck
      (the front-end computes a max-height for the panel that is small enough
      to fit on the screen).
      
      Differential Revision: https://phabricator.services.mozilla.com/D155406
      fb638019
  11. Aug 29, 2022
  12. Aug 26, 2022
  13. Jun 29, 2022
    • Nika Layzell's avatar
      Bug 1758115 - Part 2: Streamline locking, initialization and shutdown for... · 8f236832
      Nika Layzell authored
      Bug 1758115 - Part 2: Streamline locking, initialization and shutdown for TimelineConsumers, r=smaug
      
      The current implementation of TimelineConsumers contains some unnecessary
      complexity due to how it is initialized as a singleton, and the need for it to
      be initialized and used in a threadsafe way. This patch attempts to simplify it
      by making all members static, and removing the need to explicitly observe
      shutdown for cleanup.
      
      In addition, this approach avoids the risk of the type being accessed from
      off-main-thread during initialization or shutdown.
      
      Depends on D150442
      
      Differential Revision: https://phabricator.services.mozilla.com/D150443
      8f236832
  14. Jun 03, 2022
  15. Oct 21, 2021
  16. Oct 18, 2021
  17. Oct 17, 2021
  18. Oct 05, 2021
  19. Oct 01, 2021
    • Daniel Holbert's avatar
      Bug 1733701: Remove REQUIRES_UNIFIED_BUILD from view/moz.build, since it... · 01428ac8
      Daniel Holbert authored
      Bug 1733701: Remove REQUIRES_UNIFIED_BUILD from view/moz.build, since it builds just fine in non-unified mode. r=tnikkel
      
      Differential Revision: https://phabricator.services.mozilla.com/D127328
      01428ac8
    • Daniel Holbert's avatar
      Bug 1733465 part 5: Store nsView::mDirtyRegion in a UniquePtr rather than a raw pointer. r=tnikkel · 582d90dd
      Daniel Holbert authored
      This lets us remove the last explicit 'delete' invocation from the /view
      subdirectory. Hooray!
      
      As part of this change, I'm also updating the getter for this member-var to
      return a reference instead of a pointer, since it's infallible.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127187
      582d90dd
    • Daniel Holbert's avatar
      Bug 1733465 part 4: Convert nsViewManager::gViewManagers to StaticAutoPtr so... · 1d08981c
      Daniel Holbert authored
      Bug 1733465 part 4: Convert nsViewManager::gViewManagers to StaticAutoPtr so that we don't have to manually delete it. r=tnikkel
      
      This removes an explicit 'delete', by letting the StaticAutoPtr type handle the
      deletion for us automatically and atomically when we clear its value.
      
      Benefits/justification:
      * This reduces the potential for double-free bugs.
      * This matches existing patterns elsewhere in our code
        (search for e.g. "StaticAutoPtr<nsTArray")
      * This reduces (by 1) the number of explicit `delete` calls that we need to
        consider, when auditing the codebase for potential memory safety issues.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127185
      1d08981c
    • Daniel Holbert's avatar
      Bug 1733465 part 2: Modernize nsViewManager::GetRootWidget() to use... · ed93bd50
      Daniel Holbert authored
      Bug 1733465 part 2: Modernize nsViewManager::GetRootWidget() to use already_AddRefed return value, instead of requiring getter_AddRefs at callsite. r=tnikkel
      
      This patch shouldn't change behavior at all.
      
      This patch replaces a manual NS_ADDREF call with typesafe code that manages the
      reference count for us.  This reduces repeated boilerplate code, in the
      implementation as well as the callsites.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127179
      ed93bd50
    • Daniel Holbert's avatar
      Bug 1733465 part 1: Store nsViewManager::mRootViewManager in a RefPtr instead... · bfb72ec4
      Daniel Holbert authored
      Bug 1733465 part 1: Store nsViewManager::mRootViewManager in a RefPtr instead of manually managing its reference count. r=tnikkel
      
      This patch is just a refactoring which shouldn't change behavior.
      
      Before this patch, mRootViewManager is a bit of an odd hybrid in terms of its
      ownership semantics.  If it's pointing to `this`, then it's not an owning
      reference (i.e. we don't AddRef or Release it), vs. if it's pointing to some
      other instance, then it *is* an owning reference (i.e. we *do* AddRef and
      Release it).
      
      After this patch, we change things such that it's unconditionally an owning
      reference, with a null value having special meaning.
      
      In particular:
      (a) Now, we'll store it in a RefPtr and let that manage the reference counting.
      (b) Now, we'll never explicitly assign it to 'this'; instead, we set it to null
      and we interpret a null value as an indication that 'this' is the root.
      
      Fortunately, this variable doesn't have many direct usages, so this slight
      change in meaning/invariatnts doesn't require very much code to be updated.
      This variable is mostly used via the infallible RootViewManager() getter. This
      patch updates that getter in accordance with the new contract, and the callers
      don't need to worry about this change.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127178
      bfb72ec4
    • Sandor Molnar's avatar
      Backed out 5 changesets (bug 1733465) for causing android build bustages in... · 325902a5
      Sandor Molnar authored
      Backed out 5 changesets (bug 1733465) for causing android build bustages in android/SessionAccessibility.cpp. CLOSED TREE
      
      Backed out changeset 4c5b28b66740 (bug 1733465)
      Backed out changeset 3db0452b185c (bug 1733465)
      Backed out changeset d7460c9c6acb (bug 1733465)
      Backed out changeset 3cee3f595e45 (bug 1733465)
      Backed out changeset 267d5fc92f12 (bug 1733465)
      325902a5
    • Daniel Holbert's avatar
      Bug 1733465 part 5: Store nsView::mDirtyRegion in a UniquePtr rather than a raw pointer. r=tnikkel · cf5b13f1
      Daniel Holbert authored
      This lets us remove the last explicit 'delete' invocation from the /view
      subdirectory. Hooray!
      
      As part of this change, I updated the getter for this member-var to return a
      "const UniquePtr&" instead of a raw pointer, per this recommendation in
      UniquePtr.h:
      https://searchfox.org/mozilla-central/rev/7539ad54ddc720a0553efd07ca681b9a409f9887/mfbt/UniquePtr.h#171-173
      
      (Fortunately the getter only has two callers, so they were easy to fix.)
      
      I also changed the name of the getter to drop "Get", per our convention that
      getters can hint at infallibility by the absence of "Get".
      
      Depends on D127185
      
      Differential Revision: https://phabricator.services.mozilla.com/D127187
      cf5b13f1
    • Daniel Holbert's avatar
      Bug 1733465 part 4: Convert nsViewManager::gViewManagers to StaticAutoPtr so... · cc225890
      Daniel Holbert authored
      Bug 1733465 part 4: Convert nsViewManager::gViewManagers to StaticAutoPtr so that we don't have to manually delete it. r=tnikkel
      
      This removes an explicit 'delete', by letting the StaticAutoPtr type handle the
      deletion for us automatically and atomically when we clear its value.
      
      Benefits/justification:
      * This reduces the potential for double-free bugs.
      * This matches existing patterns elsewhere in our code
        (search for e.g. "StaticAutoPtr<nsTArray")
      * This reduces (by 1) the number of explicit `delete` calls that we need to
        consider, when auditing the codebase for potential memory safety issues.
      
      Depends on D127180
      
      Differential Revision: https://phabricator.services.mozilla.com/D127185
      cc225890
    • Daniel Holbert's avatar
      Bug 1733465 part 2: Modernize nsViewManager::GetWidget() to use... · 5b203843
      Daniel Holbert authored
      Bug 1733465 part 2: Modernize nsViewManager::GetWidget() to use already_AddRefed return value, instead of requiring getter_AddRefs at callsite. r=tnikkel
      
      This patch shouldn't change behavior at all.
      
      This patch replaces a manual NS_ADDREF call with typesafe code that manages the
      reference count for us.  This reduces repeated boilerplate code, in the
      implementation as well as the callsites.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127179
      5b203843
    • Daniel Holbert's avatar
      Bug 1733465 part 1: Store nsViewManager::mRootViewManager in a RefPtr instead... · f086f76b
      Daniel Holbert authored
      Bug 1733465 part 1: Store nsViewManager::mRootViewManager in a RefPtr instead of manually managing its reference count. r=tnikkel
      
      This patch is just a refactoring which shouldn't change behavior.
      
      Before this patch, mRootViewManager is a bit of an odd hybrid in terms of its
      ownership semantics.  If it's pointing to `this`, then it's not an owning
      reference (i.e. we don't AddRef or Release it), vs. if it's pointing to some
      other instance, then it *is* an owning reference (i.e. we *do* AddRef and
      Release it).
      
      After this patch, we change things such that it's unconditionally an owning
      reference, with a null value having special meaning.
      
      In particular:
      (a) Now, we'll store it in a RefPtr and let that manage the reference counting.
      (b) Now, we'll never explicitly assign it to 'this'; instead, we set it to null
      and we interpret a null value as an indication that 'this' is the root.
      
      Fortunately, this variable doesn't have many direct usages, so this slight
      change in meaning/invariatnts doesn't require very much code to be updated.
      This variable is mostly used via the infallible RootViewManager() getter. This
      patch updates that getter in accordance with the new contract, and the callers
      don't need to worry about this change.
      
      Differential Revision: https://phabricator.services.mozilla.com/D127178
      f086f76b
  20. Sep 22, 2021
Loading