Commit Graph

782014 Commits

Author SHA1 Message Date
Andrew Osmond
dd32696841 Bug 1749526 - Process partial WebRender transactions instead of discarding them partway. r=gfx-reviewers,bradwerth
When we encounter an error updating resources, or processing parent
commands, we actually bail out midway. This is problematic because some
resource updates and commands depend on follow-ups to release resources
and such. Also, when the next display list update comes in, we may now
have an incomplete resource set and see display errors / crashes that
may not be easily traceable to the previous failure.

This patch makes us always finish processing a transaction, even if we
encountered errors. This will put us in a more consistent state at
least. It adds new asserts to try to catch these issues sooner and in
automation. It also ensures we do a print to the critical log in all of
these cases so we know this issue was encountered.

Differential Revision: https://phabricator.services.mozilla.com/D135613
2022-01-13 18:38:00 +00:00
Ting-Yu Lin
653f4b3694 Bug 1745113 Part 5 - Make grapheme cluster break iterators implement SegmentIteratorUtf16, and adapt the callers. r=necko-reviewers,jfkthame,kershaw
This is the main patch for the bug. It aims to change the grapheme cluster
break's `Next()` API by implementing SegmentIteratorUtf16 interface, and adapt
the callers. It shouldn't change the behavior.

While rewriting the caller, one caveat worth mentioning is the loop termination
condition. If the old code relies on `!AtEnd()` as the loop termination
condition, and it advances the iterator at the end of the loop, it meant
to *skip* its logic when the break position is at the end of the string. For
example, see the `mozTXTToHTMLConv::NumberOfMatches`.

This patch also hooks grapheme cluster break iterator into
Segmenter::TryCreate() interface.

Existing test coverage for the file changed:
- netwerk/test/unit/test_mozTXTToHTMLConv.js
- layout/reftests/forms/input/file/dynamic-max-width.html

Differential Revision: https://phabricator.services.mozilla.com/D135643
2022-01-13 18:36:04 +00:00
Ting-Yu Lin
529d2dbd76 Bug 1745113 Part 4 - Change AppUnitWidthOfString to take a Span parameter. r=jfkthame
`Span` is more versatile than `const String&`, and existing callers passing a
String into this function do not need any change.

This patch makes the next part simpler.

Differential Revision: https://phabricator.services.mozilla.com/D135642
2022-01-13 18:36:04 +00:00
Ting-Yu Lin
e418a257b5 Bug 1745113 Part 3 - Change CountGraphemeClusters() to take a Span parameter. r=jfkthame
Differential Revision: https://phabricator.services.mozilla.com/D135641
2022-01-13 18:36:04 +00:00
Ting-Yu Lin
948b11a2dc Bug 1745113 Part 2 - Move ClusterReverseIterator into Segmenter.h, and rename it. r=necko-reviewers,kershaw
Include "nsLayoutUtils.h" in nsFileControlFrame to get rid of warnings in my
editor because it uses utilities such as `nsLayoutUtils::AppUnitWidthOfString`.
We compile it without issues because of unified build.

Differential Revision: https://phabricator.services.mozilla.com/D135640
2022-01-13 18:36:03 +00:00
Ting-Yu Lin
e522533f4e Bug 1745113 Part 1 - Move ClusterIterator into Segmenter.h, and rename it. r=necko-reviewers,kershaw
This patch doesn't change the behavior. Just move the code around.

Differential Revision: https://phabricator.services.mozilla.com/D135639
2022-01-13 18:36:03 +00:00
Bob Owen
5237bb3b74 Bug 1750033: Re-enable win32k lockdown for file content processes when pref set. r=cmartin
Differential Revision: https://phabricator.services.mozilla.com/D135895
2022-01-13 18:17:08 +00:00
Emilio Cobos Álvarez
3c6daa4dca Bug 1749957 - Fix parsing of content-length http3 header. r=dragana,necko-reviewers,kershaw
HTTP headers are case insensitive.

Differential Revision: https://phabricator.services.mozilla.com/D135871
2022-01-13 18:04:17 +00:00
Alexandre Lissy
a32e438476 Bug 1749895 - Add missing MOZ_SANDBOX guard for gtest UtilityProcess r=gcp
Differential Revision: https://phabricator.services.mozilla.com/D135873
2022-01-13 17:17:46 +00:00
Noemi Erli
d8599de50c Backed out changeset a07c86e0a2ef (bug 1749895) as per dev's request CLOSED TREE 2022-01-13 19:13:03 +02:00
Emily McMinn
dd2fc97cea Bug 1726426 - Update the RTAMO page to render through MultistageAboutWelcome and match Proton style r=pdahiya,fluent-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D133679
2022-01-13 17:05:02 +00:00
Alexandre Lissy
f60c1538e6 WIP: Bug 1749895 - Add missing MOZ_SANDBOX guard for gtest UtilityProcess r=gcp
Differential Revision: https://phabricator.services.mozilla.com/D135873
2022-01-13 17:00:29 +00:00
Alexandru Michis
3de56eb5f2 Backed out changeset 19b1136a92ec (bug 1745511) for causing mochitest failures in GMPServiceParent.cpp
CLOSED TREE
2022-01-13 18:49:34 +02:00
Tom Ritter
8d49db516e Bug 1749346: Add fuzzy-query to the moz.yaml format r=jewilde
Differential Revision: https://phabricator.services.mozilla.com/D135535
2022-01-13 16:25:46 +00:00
Gijs Kruitbosch
23496d7831 Bug 1648114 - make clang-tidy easier to find, r=andi
Differential Revision: https://phabricator.services.mozilla.com/D133191
2022-01-13 16:20:03 +00:00
Lee Salzman
93d24303eb Bug 1749103 - Avoid thrashing gfxDWriteFont's ScaledFonts between canvas and content. r=jfkthame
This is essentially a partial revert of a cleanup done in bug 1742896. If canvas and content
are using the same underlying gfxDWriteFont and simultaneously retrieving a ScaledFont, this
may cause the ScaledFont to get repeatedly destroyed and re-instantiated every time we switch
from one context to the other. If this destruction happens at an inopportune time while WR
is still using a blob image with the font, it can potentially trigger undesirable assertions.

For now, duplicate the part of Bas' original patch from bug 1730722 that separatedly cached
the GDI and non-GDI versions of the ScaledFont. This way, both will exist for the lifetime
of the underlying gfxDWriteFont and thus avoid the thrashing.

Differential Revision: https://phabricator.services.mozilla.com/D135442
2022-01-13 16:18:47 +00:00
Noemi Erli
09dc5b2ce7 Backed out changeset 4959d55a439a (bug 1722102) for causing SM bild bustage CLOSED TREE 2022-01-13 18:29:02 +02:00
Agi Sferro
2448786acb Bug 1749838 - Fix typo in CHANGELOG.md. r=calu
Differential Revision: https://phabricator.services.mozilla.com/D135750
2022-01-13 15:58:53 +00:00
Agi Sferro
3d9d9f6607 Bug 1749652 - Actually publish javadoc jar contents. r=calu
Not sure how this code came to be, but it produces an empty javadoc jar.

The patch fixes the javadoc jar task so that it actually collects the javadoc
files.

Differential Revision: https://phabricator.services.mozilla.com/D135752
2022-01-13 15:58:52 +00:00
Andre Natal
7352475230 Bug 1722102 - Adding vendor intgemm library for Firefox Translations r=yury,lth,firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D120770
2022-01-13 15:55:06 +00:00
Alexandru Michis
c5fbfa6ff2 Backed out changeset db861e2fd044 (bug 1749652) as requested by agi.
CLOSED TREE
2022-01-13 17:55:26 +02:00
Hannah Peuckmann
f5c826b962 Bug 1745389 - Split up SecuritySettingsCleaner. r=geckoview-reviewers,pbz,keeler,jonalmeida
Differential Revision: https://phabricator.services.mozilla.com/D134119
2022-01-13 15:04:05 +00:00
lyavor
90fdceb124 Bug 1749953 - browser_mixed_content_download.js is not removing its download file. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D135870
2022-01-13 14:37:19 +00:00
R. Martinho Fernandes
73a91c8fd6 Bug 1736763: Correctly parse IPv6 hosts in certificate overrides r=keeler
Differential Revision: https://phabricator.services.mozilla.com/D135617
2022-01-13 14:29:41 +00:00
lyavor
f85f79ecf5 Bug 1747673 - HTTPS First fallback to http for non-standard 5xx status code responses. r=ckerschb,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D135214
2022-01-13 14:28:34 +00:00
Jesse Schwartzentruber
69a30b6cc7 Bug 1742857 - Add Grizzly fuzzing framework smoke test. r=tsmith,ahal
Differential Revision: https://phabricator.services.mozilla.com/D132279
2022-01-13 14:23:11 +00:00
Florian Quèze
3269c9a736 Bug 1745511 - Expand FOG IPC to GMP process, r=bryce,chutten.
Differential Revision: https://phabricator.services.mozilla.com/D133550
2022-01-13 13:44:22 +00:00
ffxbld
60d27d6358 No Bug, mozilla-central repo-update HSTS HPKP remote-settings - a=repo-update r=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D135850
2022-01-13 13:41:59 +00:00
Masayuki Nakano
396dde1072 Bug 1745862 - part 3: Make RangeBoundaryBase::DetermineOffsetFromReference check mRef->IsBeingRemoved before computing its index r=mbrodesser
`nsINode::ComputeIndexOf` may be expensive especially when the node is not
in the parent node.  Therefore, `DetermineOffsetFromReference` should check
whether `mRef` has already been removed from the child node chain of `mParent`.
Then, it explains the reason why `ComputeIndexOf` may return `Nothing` clearer.

Depends on D135190

Differential Revision: https://phabricator.services.mozilla.com/D135823
2022-01-13 13:25:16 +00:00
Masayuki Nakano
e4e35dbacd Bug 1745862 - part 2: Make IsSetAndValid of RangeBoundaryBase and EditorDOMPointBase return false when it refers a node which is being removed from parent r=smaug,mbrodesser
`IsSetAndValid` method of `RangeBoundaryBase` and `EditorDOMPointBase` should
return `false` if points a removed node.  However, while a node is being
removed, the node still keeps referring the parent, but it has already removed
from the child node chain of the parent.  In this moment, returning `true` may
not be expected by the callers because the point becomes invalid soon with
the parent being cleared.

Differential Revision: https://phabricator.services.mozilla.com/D135190
2022-01-13 13:25:16 +00:00
Masayuki Nakano
96af7451e9 Bug 1745862 - part 1: Make RangeBoundary::DetermineOffsetFromReference() not set mOffset if mRef is being removed from the parent r=mbrodesser
It assumes that `mRef` is always in `mParent`, but this may be called when
`mRef` is **being** removed from `mParent`.  In the case, `mRef` still thinks
`mParent` is its parent, but it's already been removed from the child node chain
of `mParent`.  Therefore, `mParent->ComputeIndexOf(mRef)` may return `Nothing`.

This patch makes it keeps `mOffset` as `Nothing` in the case, and if the caller
wants invalid offset, this makes it use the fallback path.  I.e., this patch
changes the behavior of `RangeBoundary::Offset(kValidOffset)`.

Differential Revision: https://phabricator.services.mozilla.com/D134678
2022-01-13 13:25:15 +00:00
Kagami Sascha Rosylight
edcdc5567a Bug 1749780 - Update libjxl to 9a74bd70b7932750deb78a8aebd6e041ce7f8b01 r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D135769
2022-01-13 12:49:48 +00:00
Gijs Kruitbosch
cbb0d57034 Bug 1745720 - use 'chromelinkclick' command event to avoid instantiating ClickHandlerChild except for link clicks, r=smaug,mconley
Instead of relying on untrusted click/auxclick events anywhere
instantiating the actor, and then having to look for links, after this
patch we'll only instantiate the actor for actual link clicks. This
patch moves to using a chrome-only command event (with type
`chromelinkclick`) dispatched from the link click post-visitor
to accomplish that.

In future we should probably move both this and the
middle-click-to-paste handling into DOM code (or, for the latter,
remove it) but this is a less invasive solution.

This also moves the middle-click-to-paste handling into its own
listener. It needs to listen to page events in general (not just
links) but is disabled everywhere by default, so registering an
actor for everyone doesn't seem like a good trade-off. To avoid
duplicating all the logic (we do need to avoid doing middle-click
navigation based on the clipboard when clicking on links!), as
well as keeping patch size down, the actual control flow goes
through the click handler actor still.

Differential Revision: https://phabricator.services.mozilla.com/D134011
2022-01-13 12:38:54 +00:00
Cristian Tuns
f93b09eb34 Backed out 2 changesets (bug 1725487) for causing mochitest failures on browser_toolbar_drop_bookmarklet.js CLOSED TREE
Backed out changeset 1564124c0309 (bug 1725487)
Backed out changeset ae5ab5c447c3 (bug 1725487)
2022-01-13 07:23:29 -05:00
Makoto Kato
aa7a01ca92 Bug 1748955 - Remove AndroidBridge dependencies from GfxInfo. r=geckoview-reviewers,calu
As historical reason, AndroidBridge has a lot of JNI wrappers. But we have
auto-generation JNI wrappers now, so it is unnecessary to keep wrappers in
AndroidBridge for GfxInfo.

So I would like to remove AndroidBridge dependencies from GfxInfo.

Differential Revision: https://phabricator.services.mozilla.com/D135324
2022-01-13 12:09:47 +00:00
Timothy Nikkel
2a255fbc6d Bug 1749100. Use the widget directly in DisplayportSetListener::OnPostRefresh/SendLayersDependentApzcTargetConfirmation. r=emilio
The widget is the thing we care about here. The document/presshell/prescontext are fetched from the widget if we need them for something else. So we don't need to go widget -> prescontext -> presshell -> viewmanager -> rootview -> widget to get the window rendering, just fetch the window renderer right from the widget that we are already storing.

(This was pointed out in https://phabricator.services.mozilla.com/D135340 of bug 1749004 as a potential minor behaviour change of that patch.)

Differential Revision: https://phabricator.services.mozilla.com/D135440
2022-01-13 11:42:53 +00:00
Evgenia Kotovich
cc5315b51f Bug 1725487 - Don't allow dragging multiple uris if one is javascript:link. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D134395
2022-01-13 11:05:59 +00:00
Evgenia Kotovich
960d138fc9 Bug 1725487 - Show the Add Bookmark Dialog when dragging javascript url to create a bookmarklet. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D133813
2022-01-13 11:05:59 +00:00
Daisuke Akatsuka
f56a316fd8 Bug 1749900: Refresh nsNavHistoryQueryResultNode when updating the dateAdded/lastModified. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D135824
2022-01-13 11:04:05 +00:00
Tom Schuster
29c6c53e31 Bug 1735663 - Improve error messages for ReadableStream reader. r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D135740
2022-01-13 10:38:26 +00:00
Henrik Skupin
beb1f69ae7 Bug 1749507 - [remote] Emit internal event when window global message handler has been initialized. r=webdriver-reviewers,jdescottes
Before an instance of a WindowGlobalMessageHandler is ready to be used the
initial session data needs to be applied. Because this happens asynchronously
an internal "window-global-handler-created" event will be used for which the
root message handler or any other module can listen for.

Differential Revision: https://phabricator.services.mozilla.com/D134265
2022-01-13 09:46:33 +00:00
Henrik Skupin
d85900994d Bug 1749507 - [remote] Add support for internal message handler events. r=webdriver-reviewers,jdescottes
There are two kind of events that can be used by module implementations
to pass information within the message handler framework.

First, with internal events the different modules and the message handlers
themselves can send around information eg. informing the parent process
about specific DOM events happening in the child process. These events
are not intended to be sent to external clients.

Second, with protocol events the different modules can send events with
a payload as specified in the appropriate protocol. These events shouldn't
be intercepted, modified, or ignored and will be sent to external clients.

Differential Revision: https://phabricator.services.mozilla.com/D134264
2022-01-13 09:46:32 +00:00
Dão Gottwald
bfdf5027f7 Bug 1749717 - Let the profiler popup use more shared colors and relative font sizes instead of hardcoded ones. r=Itiel
Differential Revision: https://phabricator.services.mozilla.com/D135699
2022-01-13 09:09:50 +00:00
Manuel Bucher
9706eeb9cc Bug 1749437 - Fix spelling of priorization r=necko-reviewers,kershaw
Change spelling in both network.http.http3.priorization and
network.http.http3.send_background_tabs_deprioritization config option

Differential Revision: https://phabricator.services.mozilla.com/D135689
2022-01-13 08:30:42 +00:00
Alex Ionescu
5be99b3686 Bug 1748849 - Update microsoft recording to mitm7 r=perftest-reviewers,kimberlythegeek
Differential Revision: https://phabricator.services.mozilla.com/D135684
2022-01-13 07:26:24 +00:00
Daniel Holbert
080e18fa47 Bug 1663722: Make nsPageSequenceFrame gracefully handle SizeToContent calls. r=emilio
nsPageSequenceFrame does a thing where it grows its desired size to fit the
AvailableISize and ComputedBSize (under the assumption that those are the
actual dimensions of our scrollport, which it wants to make maximal use of).

This behavior causes trouble when it's reflowed under the privileged
'sizeToContent' JS API.  That API makes us reflow with nscoord_MAX as the
viewport's ComputedBSize(), and this nscoord_MAX value gets passed down to be
the nsPageSequenceFrame's ComputedBSize as well.  When we reach the code in
question, we dutifully grow the desired size to that bogus huge value, which is
clearly wrong.

This patch addresses this issue by simply declining to grow the desired size in
the scenario where ComputedBSize() is unconstrained.  This leaves us with
reasonable values for our desired size (which are actually based on the
content, which makes it the right thing to do for the purpose of a
SizeToContent() call).

Differential Revision: https://phabricator.services.mozilla.com/D135762
2022-01-13 06:08:51 +00:00
Butkovits Atila
288e47841c Backed out changeset fe2b37539282 (bug 1749780) for causing build bustages. CLOSED TREE 2022-01-13 04:12:03 +02:00
Kagami Sascha Rosylight
87d138d11d Bug 1749780 - Update libjxl r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D135769
2022-01-13 01:54:46 +00:00
Kershaw Chang
c8a363cffe Bug 1749501 - Revert bug 1392272, r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D135702
2022-01-13 01:24:49 +00:00
Butkovits Atila
60d2addde1 Backed out changeset 26a792be5ec3 (bug 1745720) for causing failures complaining about Event.cpp. CLOSED TREE 2022-01-13 03:19:10 +02:00