Commit Graph

714652 Commits

Author SHA1 Message Date
Daisuke Akatsuka
94dc1583db Bug 1647603: Update MDN compat data. r=rcaliman
Differential Revision: https://phabricator.services.mozilla.com/D80770
2020-06-24 13:35:14 +00:00
Yura Zenevich
064b6f0847 Bug 1598016 - make sure that remote frame highlighting works in browser toolbox. r=ochameau
Differential Revision: https://phabricator.services.mozilla.com/D79404
2020-06-24 13:21:30 +00:00
Yura Zenevich
c5c241588f Bug 1598016 - ensure that only one accessible object is highlighted at all times. r=ochameau
Differential Revision: https://phabricator.services.mozilla.com/D79403
2020-06-24 13:29:28 +00:00
Francesco Lodolo (:flod)
a4b5e4d9bd Bug 1647692 - Add language packs and dictionaries to about:support, r=Gijs,fluent-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D80808
2020-06-24 13:30:22 +00:00
Kartikaya Gupta
6c36ed2c70 Bug 1647265 - Follow-up to fix merge error with bug 1647225. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D80872
2020-06-24 13:32:30 +00:00
Erica Wright
822b9b6b54 Bug 1645089 - Update Data Sanitization Scalars. r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D79922
2020-06-22 07:09:08 +00:00
Erica Wright
5adcffe1d8 Bug 1645088 - Update trackers_blocked_count probe. r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D79923
2020-06-22 07:08:50 +00:00
Gijs Kruitbosch
a9867db924 Bug 1647378 - stop using mStartupWriteInitiated in the gtest for startupcache, r=dthayer
Differential Revision: https://phabricator.services.mozilla.com/D80764
2020-06-24 02:38:28 +00:00
Mihai Alexandru Michis
bebac5dcfa Merge mozilla-central to autoland. a=merge CLOSED TREE 2020-06-24 16:09:44 +03:00
Mihai Alexandru Michis
5e50c08b10 Backed out changeset 47a06752bda8 (bug 1647383) as requested by jmaher. a=backout
DONTBUILD
2020-06-24 16:06:16 +03:00
Nicolas Silva
ca942ccc84 Bug 1642629 - Preallocate the batches and batch rects vectors. r=gw
It would be wasteful to preallocate all batch builders because the majority of them have only a single batch, while typically only one will will have many batches. Thankfully we can acurately guess which pictures will produce many batches by checking whether they have more than one cluster.

Differential Revision: https://phabricator.services.mozilla.com/D80469
2020-06-24 12:49:51 +00:00
Nicolas Silva
0d9ad4dbe2 Bug 1642629 - Reserve sorted polygon list before pushing know number of split planes into it. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D80438
2020-06-24 12:49:51 +00:00
Nicolas Silva
80b62b8fcd Bug 1642629 - Preallocate gpu cache texture vectors. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D80437
2020-06-24 12:49:13 +00:00
Nicolas Silva
429bda5d65 Bug 1642629 - Reserve GpuBlockData vector before pushing in a loop. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D80203
2020-06-24 12:49:13 +00:00
Nicolas Silva
440726b308 Bug 1642629 - Preallocate CompositeStateDescriptor vectors. r=kvark
Vector reallocations in CompositeState::push_surface are taking about 2% of total frame building time before this patch. There was an effort at preallocating some with constant values but I suspect these constants haven't been updated along with picture cachign heuristics.

Differential Revision: https://phabricator.services.mozilla.com/D80195
2020-06-24 12:48:22 +00:00
Nicolas Silva
cf618044db Bug 1642629 - Preallocate the primitive headers vector. r=kvark
This patch a simple utility to help with pre-allocating vectors that we can't recycle and use it with the primitive headers.

Differential Revision: https://phabricator.services.mozilla.com/D80194
2020-06-24 12:42:26 +00:00
Nicolas Silva
470f80670a Bug 1642629 - Recycle FrameVisibilityState's clip_chain_stack and surface_stack. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D80193
2020-06-24 12:42:03 +00:00
Nicolas Silva
6bbff60830 Bug 1642629 - Reserve items in SegmentBuilder before simple loops. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D80192
2020-06-24 12:41:50 +00:00
Nicolas Silva
79d0fcebc2 Bug 1642629 - Recycle shared clips allocation in picture.rs. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D80178
2020-06-24 12:41:37 +00:00
Nicolas Silva
b1d4b4878a Bug 1642629 - Regroup recycled data structures into scratch buffers. r=gw
This change just restructures the recycling added in previouscommits.

Differential Revision: https://phabricator.services.mozilla.com/D80096
2020-06-24 12:41:14 +00:00
Nicolas Silva
9cac8b72d6 Bug 1642629 - Recycle dirty_region_stack in FrameBuilder. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D79858
2020-06-24 12:40:41 +00:00
Nicolas Silva
bbc46b7620 Bug 1642629 - Recycle a couple of vectors in PictureUpdateState. r=gw
Differential Revision: https://phabricator.services.mozilla.com/D79857
2020-06-24 12:40:24 +00:00
Nicolas Silva
17be71bbe3 Bug 1642629 - Recycle the surface info vector in frame building. r=gw
This vector is usually small, but on some pages it can be fairly large (500+ in https://forum.xda-developers.com/redmi-note-3/development for example).

Differential Revision: https://phabricator.services.mozilla.com/D79855
2020-06-24 12:40:01 +00:00
Paul Adenot
fc302cd8b4 Bug 1647717 - Fix audio thread registration to the profiler in AudioStream.cpp. r=achronop
More or less the same as GraphDriver.cpp but simpler because there is only one
return statement.

Differential Revision: https://phabricator.services.mozilla.com/D80857
2020-06-24 12:45:36 +00:00
Lee Salzman
7ed00023cb Bug 1646835 - group RenderCompositorNative subclass methods together. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D80773
2020-06-24 04:24:18 +00:00
Mike Hommey
a87a1c3b54 Bug 1645986 - Move most GeneratedFile generation to top-level backend.mk. r=firefox-build-system-reviewers,rstewart
While ideally we'd just move all of them at the top-level, there are
other things that depend on them that wouldn't then get the right
dependencies. One of them is install steps in dist/something, but there
are others, and that's a rather long pole of things requiring many
changes along with chances to break things.

So instead, we go with a simpler and more limited approach, where we
still recurse into directories to run their export tier (to run whatever
else than GeneratedFiles they have), but ensure the GeneratedFiles we
moved at the top-level are built before recursing by making
directory/export depend on them.

Differential Revision: https://phabricator.services.mozilla.com/D80608
2020-06-24 04:23:02 +00:00
Mike Hommey
47bca8b390 Bug 1645986 - Use the basename of the output file for const name in gen_cert_header.py. r=firefox-build-system-reviewers,rstewart
While currently the path given to the script is relative and doesn't
contain a directory, but will soon, and in that case, we don't want
the directory to be part of the const name (that wouldn't even be a
valid identifier).

Differential Revision: https://phabricator.services.mozilla.com/D80607
2020-06-24 04:23:04 +00:00
Mike Hommey
0636209ca5 Bug 1645986 - Properly mark generated files required during compile as such. r=firefox-build-system-reviewers,rstewart
Ideally, this kind of manual work wouldn't be required, but the frontend
doesn't provide enough information and while backend could correlate the
information, they currently don't.

Differential Revision: https://phabricator.services.mozilla.com/D80606
2020-06-24 05:07:25 +00:00
Mike Hommey
9820df71e8 Bug 1645986 - Avoid relative paths in GeneratedFile targets. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D80605
2020-06-24 04:23:09 +00:00
Dorel Luca
90a64f0da1 Backed out 4 changesets (bug 1646582) for Browser-chrome failures on nsIWebProgress.addProgressListener. CLOSED TREE
Backed out changeset 2111dd0d6dc0 (bug 1646582)
Backed out changeset e6c496c5a4b1 (bug 1646582)
Backed out changeset 49b4ae8c8be0 (bug 1646582)
Backed out changeset 9d42ec89240c (bug 1646582)
2020-06-24 07:50:07 +03:00
Dorel Luca
e037947c1d Backed out 6 changesets (bug 1643058) for WPT failures in webrtc/RTCRtpReceiver-getSynchronizationSources.https.html. CLOSED TREE
Backed out changeset 6dd69c93d9e2 (bug 1643058)
Backed out changeset fcc0942206d9 (bug 1643058)
Backed out changeset 12c6d279b173 (bug 1643058)
Backed out changeset 7d90312af10f (bug 1643058)
Backed out changeset c4f71ccf6934 (bug 1643058)
Backed out changeset e6edf6df8183 (bug 1643058)
2020-06-24 07:28:06 +03:00
Lee Salzman
a6c3fcda13 Bug 1646835 - reuse depth buffers when rendering SWGL picture cache tiles. r=mstange
Bug 1592038 implemented a means for reducing memory usage resulting from needlessly
duplicated allocation of depth buffers when rendering WR picture cache tiles via
the NativeLayer interface. This aims to keep a similarly level of memory savings
even when using NativeLayer + SWGL.

SWGL allows, as an extension beyond OpenGL, specifying an allocation size separate
from the incidental size of a texture, which can be used to render to a smaller
valid rect of a texture without continually reallocating it every time the size
of the valid rect changes within the actual tile size. This functionality is used
to keep around only a single depth texture for the SWGL compositor that is resized
to accommodate the maximum requested tile size, so that any surface or tile can
use it as desired.

Differential Revision: https://phabricator.services.mozilla.com/D80274
2020-06-24 04:20:56 +00:00
Dorel Luca
fdb71d7688 Backed out 4 changesets (bug 1645986) for Valgrid failure. CLOSED TREE
Backed out changeset 602ea804234f (bug 1645986)
Backed out changeset c43f9360b0a5 (bug 1645986)
Backed out changeset fe1142397e72 (bug 1645986)
Backed out changeset faf6de9409f9 (bug 1645986)
2020-06-24 07:16:13 +03:00
Dorel Luca
67ec7cbf19 Backed out 2 changesets (bug 1645862) for browser-chrome failures in performance/browser_startup_content.js
Backed out changeset c5ae0087c1e7 (bug 1645862)
Backed out changeset b4643e4db774 (bug 1645862)
2020-06-24 07:00:08 +03:00
Masayuki Nakano
5ef63f4bd4 Bug 1646325 - part 3: Make WSFragment non-double-linked-list r=m_kato
Now, `WSFragment` is managed by `AutoTArray` so that it does not need to
be double-linked-list.

Differential Revision: https://phabricator.services.mozilla.com/D80315
2020-06-24 03:43:05 +00:00
Matt Woodrow
f430dac707 Bug 1646582 - Pull the inner window id from the WindowGlobalParent, rather than passing it across PBrowser for updateForLocationChange. r=nika,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D80131
2020-06-24 03:25:35 +00:00
Matt Woodrow
acd97f7b2c Bug 1646582 - Remove RemoteWebProgressManager. r=nika,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D80129
2020-06-24 03:25:09 +00:00
Matt Woodrow
21ac707a3b Bug 1646582 - Remove DOM(Inner)WindowID from nsIWebProgress. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80128
2020-06-24 03:24:21 +00:00
Matt Woodrow
6924cb49df Bug 1646582 - Remove nsIRemoteWebProgressRequest since it's not being used anywhere. r=barret
Differential Revision: https://phabricator.services.mozilla.com/D80127
2020-06-24 03:23:38 +00:00
Masayuki Nakano
69d6f854ee Bug 1646325 - part 2: Manage WSFragments with array r=m_kato
`WSFragment` is created at least one instance, and at most 3 instances per
`WSRunScanner` instance.  They can be managed with `AutoTArray` simpler and
we can avoid heap allocation with this approach.

Differential Revision: https://phabricator.services.mozilla.com/D80314
2020-06-24 03:00:07 +00:00
Kris Maglione
7b964c86a2 Bug 1645862: Part 2 - Get rid of ContentProcessSingleton. r=chutten
Differential Revision: https://phabricator.services.mozilla.com/D79871
2020-06-24 03:09:25 +00:00
Kris Maglione
3ea9f8b628 Bug 1645862: Part 1 - Split TelemetryController into parent and content modules. r=chutten
Most of TelemetryController is only used in the parent process, but is
currently loaded in all processes, where it needlessly consumes tens of KB of
memory. This patch splits the parent- and content-specific parts, and only
loads each in the processes where they're needed.

Differential Revision: https://phabricator.services.mozilla.com/D79870
2020-06-24 03:09:23 +00:00
Dorel Luca
f618398690 Backed out 2 changesets (bug 1626507) on dev's request
Backed out changeset 92117ff66bda (bug 1626507)
Backed out changeset d2e886102c03 (bug 1626507)
2020-06-24 05:04:41 +03:00
Lee Salzman
6e8db72e54 Bug 1646835 - move SWGL context creation into specific SWGL RenderCompositors. r=jrmuizel
Currently RendererOGL has mixed-in details of SWGL context creation which becomes messy
and slightly unanticipated based on the nomenclature and structure of RendererOGL. Based
on other work in bug 1646835, it becomes more natural to move this context creation into
the specific SWGL RenderCompositors so that RendererOGL can be agnostic to any SWGL
details.

Differential Revision: https://phabricator.services.mozilla.com/D80273
2020-06-24 01:23:43 +00:00
Lee Salzman
6221028051 Bug 1646835 - refactor RenderCompositorOGL into RenderCompositorNative. r=mstange
RenderCompositorOGL currently has many responsibilities including supporting
OpenGL compositor for Linux, whole-window compositing for Mac NativeLayerCA,
and per-cache-tile compositing for Mac NativeLayerCA. With the addition of
support for SWGL, this becomes even further complicated.

It becomes advantageous to separate out RenderCompositorOGL specifically as
only the basic OpenGL compositing case, as that naturally yields a simple and
isolated RenderCompositor.

What is left over becomes RenderCompositorNative, a basis for implementing
NativeLayer-based RenderCompositors. To cleanly isolate state and details of
when HW compositing or SW compositing is being used, these are further split
off into RCNativeOGL and RCNativeSWGL versions that deal with specific
isolated details of OpenGL and SWGL respectively.

RCNativeOGL deals with just setting up OpenGL FBOs for NativeLayers.

RCNativeSWGL's new task is just to deal mapping NativeLayers and providing
SWGL FBOs for them without involving OpenGL.

Differential Revision: https://phabricator.services.mozilla.com/D80270
2020-06-23 23:54:24 +00:00
Lee Salzman
d879c564d6 Bug 1646835 - add MapTile/UnmapTile hooks to the WR compositor. r=mstange
RenderCompositors for SWGL that wish to provide accelerated compositing need to
subvert the existing Bind/Unbind hooks in the WR compositor. These compositors
need to keep track of their HW tiles without actually binding an OpenGL FBO
for WR to render picture cache tiles. SWGL needs to intervene and get a backing
buffer for tile from the RenderCompositor so that it can create a SWGL FBO for
WR to render the picture cache tile to.

To that end, this adds MapTile/UnmapTile as a replacement for Bind/Unbind for
those scenarios. This is done in a way that it affects only the WrCompositor of
webrender_bindings without actually altering WR's Compositor interface. This is
beneficial because WR does not have to understand the details of SWGL
integration and also so as not to complicate other users of WR such as Servo
who are not currently utilizing SWGL at all.

RenderCompositorOGL is initially modified to use these hooks in this patch. It
later became more convenient to restructure that in a follow-up patch.

Differential Revision: https://phabricator.services.mozilla.com/D80269
2020-06-23 23:55:11 +00:00
Lee Salzman
a8bc86a552 Bug 1646835 - implement basic SWGL compositor. r=jrmuizel
This is a first implementation of a software-only SWGL RenderCompositor
that relies on the existing widget hooks for Basic compositing. It attempts
to lock the widget and get a DT whose underlying data it can supply directly
to SWGL to composite to. Critically, it does not rely on OpenGL or any other
form of HW accel to function. The interface between the RenderCompositor and
SWGL will be further refined in follow-up patches.

Differential Revision: https://phabricator.services.mozilla.com/D80268
2020-06-24 00:53:39 +00:00
Paul Bone
d2a322df9a Bug 1626507 - Update comment since code has moved r=mattwoodrow
Depends on D80339

Differential Revision: https://phabricator.services.mozilla.com/D80594
2020-06-23 09:01:03 +00:00
Paul Bone
8749f45b54 Bug 1626507 - Remove documentchannel exceptions r=mattwoodrow
This patch removes the excemptions for about:newtab, about:home and
about:blank.

When we switch processes using session restore we sometimes focus the
content area. We mustn't do this if the uri is undefined, this can happen
for some of these pages and we expect the address bar to be focused instead.

Differential Revision: https://phabricator.services.mozilla.com/D80339
2020-06-23 06:25:33 +00:00
Ryan VanderMeulen
6633b739e9 Bug 1645837 - Update pdf.js to version 2.6.47. r=bdahl
Differential Revision: https://phabricator.services.mozilla.com/D79712
2020-06-24 01:48:35 +00:00