So that removing stuff under an anonymous box (such like emptying a table that
has an anonymous table cell) doesn't have to re-create the table itself, which
could trigger pathological behavior if that needs to remove more stuff (due to
it being inside an ib-split for example).
To do that, unify how we deal with anonymous wrapper boxes a little bit, which
avoids the need to special-case the grid/flex anonymous items too, and
optimizes them in the same way. E.g., emptying a div like:
<div style="display: flex">Some random text</div>
Will no longer reframe the <div>, just remove the text and the anonymous
wrapper.
We need to remove the eTypeBlock check added in bug 500467 since now removing a
table-related pseudo might in fact need white-space to be suppressed or
un-suppressed. This is tested by some of the table-anonymous-boxes reftests.
Differential Revision: https://phabricator.services.mozilla.com/D212292
The original intention of adding NS_DISPATCH_AT_END always when on the
same pool was to reduce the risk of spinning up unneeded threads.
Bug 1891664 introduced two changes that make this now unwanted:
- we always wait for the dispatching thread to pick up the event
- we give threads a grace timeout before shutting them down
So before bug 1891664 landed, this flag would just have influenced
if we create a new thread, but if there was an idle thread, the event
would just process immediately and in parallel without any latency.
Now the event will wait for the dispatching thread to become idle if
NS_DISPATCH_AT_END is set, which might increase the latency if we are
not at the end of the dispatching event as we are instead in the case of
TaskQueue dispatches.
What's more, the grace timeout reduces the risk of noise from frequent
thread creation and destruction, such that creating a new thread when
there is load we can immediately serve is actually best for latency.
Differential Revision: https://phabricator.services.mozilla.com/D212399
The new names better match what the functions are about. There used to be a 1-1 relation betwee transforms and antialiasing, but that's not true anymore with SVG rects.
Differential Revision: https://phabricator.services.mozilla.com/D212277
The feature could be used by other shaders, for example gradient masks currently fall back to blob images but we should use shaders for them instead.
Differential Revision: https://phabricator.services.mozilla.com/D212276
I think that it's more informative to explain what the clip represents than its coordinate space in the name of the flag. The documentation for the flag is extended to explain the coordinate space and its relation with the render task rect.
Differential Revision: https://phabricator.services.mozilla.com/D212272
This has the potential to regress other things, and if that happens,
we'll balance the pros and cons. But first, let's attempt this.
Differential Revision: https://phabricator.services.mozilla.com/D212516
Update the API, `nspectorUtils.getCSSStyleRules`. Add one extra
argument so the user can choose whether we should return the starting
style, for a given element, at this moment.
Differential Revision: https://phabricator.services.mozilla.com/D209318
Every use of ScaleDataSourceSurface checks for a null result and just spits out
a warning. So here it seems reasonable to check the input is valid, and if not,
just spit out that null result. This should give us more consistent behavior
between debug and opt builds.
Differential Revision: https://phabricator.services.mozilla.com/D212501
This is prep work for enabling pulling l10n strings from github. When we do that, we'd like to start bumping the mobile changesets file alongside the desktop one. At the moment it simply pulls `default` for all revisions.
Differential Revision: https://phabricator.services.mozilla.com/D212431
The `multil10n.py` mozharness script that gets run as part of `fx_desktop_build.py` (which we use to make android builds...) ends up in a virtualenv without this installed. It's no longer needed anyways as Python 2 is long gone, so dropping the references to `six` is the best fix.
Differential Revision: https://phabricator.services.mozilla.com/D212390
Ideally we should drop these obfuscated embedded modules, but I would prefer not to block on that for the moment. So in the meantime, here is the raw diff of the decoded version:
--- old.git.py 2024-05-27 15:06:58.352627967 -0400
+++ git.py 2024-05-27 13:58:50.365958418 -0400
@@ -1,7 +1,7 @@
"""Functions for interacting with hg"""
import os
import subprocess
-import urllib
+import urllib.parse
import re
from util.commands import run_cmd, remove_path, run_quiet_cmd
@@ -28,8 +28,8 @@
def get_repo_name(repo):
bits = urllib.parse.urlsplit(repo)
- host = urllib.quote(bits.netloc, "")
- path = urllib.quote(bits.path.lstrip("/"), "")
+ host = urllib.parse.quote(bits.netloc, "")
+ path = urllib.parse.quote(bits.path.lstrip("/"), "")
return os.path.join(host, path)
Differential Revision: https://phabricator.services.mozilla.com/D211984
I didn't do archaeology on these, but I checked the current tree for usages of the underscored and hyphenated versions of these. There are a handful of places where they get passed around, but I was unable to find anywhere that actually _sets_ them.
Differential Revision: https://phabricator.services.mozilla.com/D211983
We do not mark this field as required right now, because we still have users
that synthesize RTCRtpParameters instead of tweaking the return of
getParameters. The compat mode will ignore any attempt to modify .codecs,
otherwise this will result in the error specified in webrtc-pc.
Differential Revision: https://phabricator.services.mozilla.com/D209305
Includes some tests that compat mode ignores any attempt to set .codecs.
Also includes some miscellaneous wpt fixes and meta file updates.
Differential Revision: https://phabricator.services.mozilla.com/D209304