Commit Graph

660290 Commits

Author SHA1 Message Date
Daniel Varga
b1a511fe36 Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE 2019-07-12 13:07:05 +03:00
Daniel Varga
883bfd385e Merge mozilla-inbound to mozilla-central. a=merge 2019-07-12 12:58:03 +03:00
Tim Nguyen
1aec6fb8e6 Bug 1565081 - Use CSS variables instead of hardcoded colors in 'Disconnect Sync' dialog. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D37795

--HG--
extra : moz-landing-system : lando
2019-07-12 09:04:47 +00:00
Alexis Beingessner
6126cdbed2 Bug 1547351 - Automatically set content process render root r=kats
This implements the idea of automatically setting a content proc's
render root based on the render root enclosing the iframe that
points to it. There was a bit of cleanup in here that was a bit
tricky to extract from the core patch revolving around how we
use the Api(...) helper. This was to avoid the situation where
we use the Api(...) helper before our render root is initialized,
when we don't actually have to. I.e., when we just want the root
WebRenderAPI in all cases.

An alternative to this approach could be to fully built out the
WebRender transactions and just queue those up to be sent. However,
transaction building has various side effects which are committed
before the transaction is actually sent, so we would have to build
out some scheme for deferring those as well. This seemed simpler.

Patch primarily written by :dthayer

Differential Revision: https://phabricator.services.mozilla.com/D37078

--HG--
extra : moz-landing-system : lando
2019-07-12 14:14:22 +00:00
Doug Thayer
ea4cbb8501 Bug 1547351 - Factor out RecvEmptyTransaction's core transaction building r=sotaro
This splits out the inner bit of RecvEmptyTransaction to just iterate over
the documents once, rather than iterating over them individually. Originally
I ran into difficulties with this and then left it on the table, but I think
it was enabled by splitting out the epochs in pipeline info by renderroot.

Differential Revision: https://phabricator.services.mozilla.com/D35123

--HG--
extra : moz-landing-system : lando
2019-07-12 14:14:22 +00:00
Mihai Alexandru Michis
e0b0dfa5eb Backed out 15 changesets (bug 1014393) for causing bustages in TestMuxer.cpp and gmock-internal-utils.h CLOSED TREE
Backed out changeset 0ddbdbfa87f6 (bug 1014393)
Backed out changeset 37399c83d3bf (bug 1014393)
Backed out changeset fe652475a785 (bug 1014393)
Backed out changeset 2812ca77d87d (bug 1014393)
Backed out changeset 6755ef7b361c (bug 1014393)
Backed out changeset 72e545bdcce3 (bug 1014393)
Backed out changeset 2f030ee55722 (bug 1014393)
Backed out changeset e9416b502170 (bug 1014393)
Backed out changeset 5a01d6d44634 (bug 1014393)
Backed out changeset 3457a5065dc4 (bug 1014393)
Backed out changeset 2a4999e0475b (bug 1014393)
Backed out changeset 0be3804dc04e (bug 1014393)
Backed out changeset 234994d8f136 (bug 1014393)
Backed out changeset d17f91ff2014 (bug 1014393)
Backed out changeset 25f58baa8159 (bug 1014393)

--HG--
rename : dom/media/encoder/EncodedFrame.h => dom/media/encoder/EncodedFrameContainer.h
2019-07-12 17:18:23 +03:00
Erica Wright
9fb0a30230 Bug 1564503 - Add missing pieces to the protection report graph. r=mtigley
Bug 1564503 - Add missing pieces to the graph on protections report.

Differential Revision: https://phabricator.services.mozilla.com/D37755

--HG--
extra : moz-landing-system : lando
2019-07-12 13:58:51 +00:00
Andreas Pehrson
221a8dfeca Bug 1014393 - Use undef-after-def pattern in MediaRecorder and related files. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D37700

--HG--
extra : moz-landing-system : lando
2019-07-12 13:42:00 +00:00
Andreas Pehrson
a80b26a3f5 Bug 1014393 - Minor mochitest fixes. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D35311

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:45 +00:00
Andreas Pehrson
8d5c8d17a4 Bug 1014393 - Add Blob::CreateEmptyBlob. r=baku
I needed empty blobs in MediaRecorder and seeing that there was no
Blob::CreateEmptyBlob, nor an export of EmptyBlobImpl, I thought
Blob::CreateEmptyBlob would be the cleaner solution, so here it is.

Differential Revision: https://phabricator.services.mozilla.com/D35310

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:48 +00:00
Andreas Pehrson
25e0a96f86 Bug 1014393 - Unify MediaRecorder session shutdown paths and fix event timing when stopping per spec. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D17814

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:32 +00:00
Andreas Pehrson
4eb24d2d87 Bug 1014393 - Remove MediaRecorder::GetParentObject. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D35308

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:27 +00:00
Andreas Pehrson
4ce75e7e63 Bug 1014393 - Remove MediaRecorder::Session::PushBlobRunnable. r=bryce
This moves the impl of PushBlobRunnable from a runnable to MozPromise, which
let's us more easily modularize it's parts (gather the blob, fire dataavailable)
to make individual code paths more explicit.

Differential Revision: https://phabricator.services.mozilla.com/D17813

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:24 +00:00
Andreas Pehrson
aa33941822 Bug 1014393 - Add gtests for the standalone muxer. r=bryce
Differential Revision: https://phabricator.services.mozilla.com/D35307

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:15 +00:00
Andreas Pehrson
2e37cdaa99 Bug 1014393 - Break out muxing and queueing of track data from MediaEncoder to new Muxer class. r=bryce
This first of all does some refactoring of how metadata is encoded in
MediaEncoder. This is now guided by the new Muxer class. If we're ready to pass
data to the muxer and it does not have metadata yet, we provide metadata before
giving it any media data. This metadata is passed to the muxer in a single call.
The metadata provided in this call must stay valid for the entire recording.
This removes MediaEncoder::GetEncodedMetadata().

This also removes the ctor argument from the WebMWriter since it can now rely on
the single SetMetadata() instead.
To comply with the ContainerWriter::SetMetadata() docs,
WebMWriter::SetMetadata() will now also sanity check metadata.

ContainerWriter instances are updated somewhat, to accommodate these changes.

Lastly, and most important, the new Muxer class manages muxing of the (up to)
two tracks into a single container, ensuring that timestamps increase
monotonically throughout a recording.

Differential Revision: https://phabricator.services.mozilla.com/D35306

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:15 +00:00
Bryce Van Dyk
a539255bf2 Bug 1014393 - Move AudioGenerator to its own files so it can be used in more media gtests. r=pehrsons
Differential Revision: https://phabricator.services.mozilla.com/D35389

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:08 +00:00
Bryce Van Dyk
4cad8c0a53 Bug 1014393 - MediaEncoder better orders frames passed to the muxer. r=pehrsons
Update MediaEncoder to pass frames to the muxer in order of their time stamps.
This should prevent the currently possible scenario where audio and video
frames are written with non-monotonically increasing timestamps (in violation
of the webm spec).

Differential Revision: https://phabricator.services.mozilla.com/D35388

--HG--
extra : moz-landing-system : lando
2019-07-12 13:41:01 +00:00
Bryce Van Dyk
b0e3afd09f Bug 1014393 - Use MediaQueue to store frames pending write to muxer in MediaEncoder. r=pehrsons
MediaQueue provides a better interface for interleaving frames when writing to
the muxer (this change will follow in another changeset). The queue interface
provides a nicer abstraction than manually managing a nsTArray.

MozReview-Commit-ID: 5V5XmYODFdA

Differential Revision: https://phabricator.services.mozilla.com/D35387

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:54 +00:00
Bryce Van Dyk
f767feb399 Bug 1014393 - Update EncodedFrame class to more closely resemble MediaData class. r=pehrsons
This changes EncodedFrame to behave more like MediaData, so that EncodedFrame
can be used with the MediaQueue data structure. It also provides a somewhat
more consistent interface across media data types.

MozReview-Commit-ID: I2o6n30ErxB

Differential Revision: https://phabricator.services.mozilla.com/D35386

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:47 +00:00
Bryce Van Dyk
8dde6a0048 Bug 1014393 - Shift responsibility of adjusting packets with opus codec delay to MediaEncoder. r=pehrsons
Move the responsibility of adjusting opus frame timestamps to the MediaEncoder.
This was previously done by the EbmlComposer, but doing so in the MediaEncoder
means we can have greater control over handling of time codes and interleaving
of frames.

MozReview-Commit-ID: 2g9cy1IqOph

Differential Revision: https://phabricator.services.mozilla.com/D35385

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:40 +00:00
Bryce Van Dyk
79c5e43bd4 Bug 1014393 - Remove EncodedFrameContainer. r=pehrsons
Remove EncodedFrameContainer and clean up areas where it was used.
EncodedFrameContainer provided a wrapper around an
nsTArray<RefPtr<EncodedFrame>>, but it simplifies the code to simply expose
this array. Also clean up unused enums in EncodedFrame, and clean up some of
the outdated comments for our encoded frame handling.

MozReview-Commit-ID: Bh3VKesVoJE

Differential Revision: https://phabricator.services.mozilla.com/D35384

--HG--
rename : dom/media/encoder/EncodedFrameContainer.h => dom/media/encoder/EncodedFrame.h
extra : moz-landing-system : lando
2019-07-12 13:40:33 +00:00
Bryce Van Dyk
c949841839 Bug 1014393 - Separate MediaEncoders encode and mux steps. r=pehrsons
Separating the encode and mux steps allows for better control over interleaving
audio and video data. If encode and mux are done in a single step it's possible
to mux large amounts of audio or video data which should have been interleaved
with the other data type to give correctly ordered time stamps in the target
container.

MozReview-Commit-ID: CBYemrkpyF5

Differential Revision: https://phabricator.services.mozilla.com/D35383

--HG--
extra : moz-landing-system : lando
2019-07-12 13:40:25 +00:00
Jeff Muizelaar
b2c74a942a Bug 1565566. blob: Improve convert_from_bytes. r=Gankro
This minimizes regret by requiring T: Copy and switches
to read_unaligned() because the pointer can be unaligned.

Differential Revision: https://phabricator.services.mozilla.com/D37861

--HG--
extra : moz-landing-system : lando
2019-07-12 13:36:17 +00:00
Paul Adenot
00e65c25ca Bug 1324552 - Adjust WPT expectations.
Differential Revision: https://phabricator.services.mozilla.com/D37858

--HG--
extra : moz-landing-system : lando
2019-07-12 13:09:23 +00:00
Andreas Pehrson
83ae7ef921 Bug 1565317 - Handle missing mMediaSource in ReduceConstraint. r=jib
Differential Revision: https://phabricator.services.mozilla.com/D37778

--HG--
extra : moz-landing-system : lando
2019-07-12 13:04:14 +00:00
Bobby Holley
1a1203d4f9 Bug 1562762 - Return a Promise from DoLaunch. r=jld
Differential Revision: https://phabricator.services.mozilla.com/D37602

--HG--
extra : moz-landing-system : lando
2019-07-12 04:48:44 +00:00
Gurzau Raul
09c2a7cb24 Backed out 2 changesets (bug 1547351) for build bustages at WebRenderBridgeParent.cpp on a CLOSED TREE.
Backed out changeset b294575c279c (bug 1547351)
Backed out changeset 69260373f95c (bug 1547351)
2019-07-12 06:47:35 +03:00
Gurzau Raul
c99bec025b Backed out changeset 13b62d64e105 (bug 1457628) for reftest failures at /forms/input/file/button-height.html on a CLOSED TREE.
--HG--
extra : rebase_source : 0322d1819c6bb5f1b86cb98c65889949d89f2b3d
extra : histedit_source : fa4c921ec16cb24154c9543ae6ff85502fa19aa7
2019-07-12 06:31:29 +03:00
Ryan VanderMeulen
8d5d37e98c Bug 1565440 - Update pdf.js to version 2.3.13. r=bdahl 2019-07-11 21:54:31 -04:00
Gurzau Raul
a32cbbf294 Backed out changeset c8b2f53266b1 (bug 1563877) for library related bustages 2019-07-12 03:53:46 +03:00
Matthew Gregan
d251dd57b2 Bug 1563877 - Update cubeb-pulse-rs to 9d1c1292. r=me
--HG--
extra : rebase_source : 73b6fe84fcaf1ca4aebc2e915d7052f03c94b40c
2019-07-12 12:15:35 +12:00
Jan de Mooij
5ea23033d2 Bug 1565175 - Fix HeapSnapshotHandler to not add nodes to |visited| until they're written to the core dump. r=fitzgen
Because ShouldIncludeEdge considers the |origin| node as well, it was possible for
the old code to 'miss' nodes and never write them to the core dump even though we
also wrote some edges with the node as referent.

Differential Revision: https://phabricator.services.mozilla.com/D37701

--HG--
extra : moz-landing-system : lando
2019-07-11 18:41:43 +00:00
Honza Bambas
3f225511a3 Bug 1565518, emergency preferences to turn off individual bug fixes: 1563695, 1556491, 1562315, r=kershaw
Differential Revision: https://phabricator.services.mozilla.com/D37848

--HG--
extra : moz-landing-system : lando
2019-07-12 12:55:41 +00:00
Andreas Pehrson
8a56ba7a99 Bug 1560979 - Account for video element's intrinsic size in CanvasRenderingContext2D::DrawImage. r=jib,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D35782

--HG--
extra : moz-landing-system : lando
2019-07-12 12:46:03 +00:00
Gijs Kruitbosch
c16328f6e2 Bug 1560178 - disallow unsafe loads in the parent, r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D36312

--HG--
extra : moz-landing-system : lando
2019-07-12 12:36:33 +00:00
Gijs Kruitbosch
125429e38a Bug 1560178 - fix devtools tests that load untrusted URIs in the parent, r=jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D36311

--HG--
extra : moz-landing-system : lando
2019-07-12 12:36:19 +00:00
Gijs Kruitbosch
8b9bc73770 Bug 1560178 - fix miscellaneous tests to allow them to keep working when disallowing remote content in the parent process, r=aswan,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D36310

--HG--
extra : moz-landing-system : lando
2019-07-12 12:35:59 +00:00
Gijs Kruitbosch
2a0b208604 Bug 1560178 - adjust webextension tests that rely on loading untrusted URIs in the parent process when remote webextensions are turned off, r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D36309

--HG--
extra : moz-landing-system : lando
2019-07-12 12:35:46 +00:00
Gijs Kruitbosch
0bd423ac63 Bug 1560178 - fix/remove about:addons tests that load discovery pane in the parent, r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D36308

--HG--
extra : moz-landing-system : lando
2019-07-12 12:35:20 +00:00
Petru Lingurar
6177d83601 Bug 1480031 - Truncate floating menu labels if they overflow screen width; r=VladBaicu
There's currently a bug in Android's framework that manifests by placing the
floating menu off-screen if a menu label overflows the menu's width.
https://issuetracker.google.com/issues/137169336
To overcome this we'll manually check and truncate any menu label that could
cause issues based on the floating menu style declared upstream.

Differential Revision: https://phabricator.services.mozilla.com/D37684

--HG--
extra : moz-landing-system : lando
2019-07-12 11:30:48 +00:00
Carolina
dc61c90a77 Bug 1559225 - Build a certificate chain. r=johannh,keeler
Added third party libraries using browserify, builds a certificate chain using some functions defined in https://github.com/april/certainly-something and using a dummy certificate chain. r=johannh

Differential Revision: https://phabricator.services.mozilla.com/D34927

--HG--
extra : moz-landing-system : lando
2019-07-12 12:17:04 +00:00
Ehsan Akhgari
1000118805 Bug 1565373 - Use the intrinsic storage principal when inheriting directly; r=baku
We shouldn't perform an anti-tracking check here, since that may result
in us picking the node principal unintentionally.

Differential Revision: https://phabricator.services.mozilla.com/D37811

--HG--
extra : moz-landing-system : lando
2019-07-12 09:08:38 +00:00
Nicolas Silva
db54fa27c5 Bug 1559688 - Clip tile dirty rects to the tile's total rect. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D37841

--HG--
extra : moz-landing-system : lando
2019-07-12 12:04:57 +00:00
Dão Gottwald
94076a2fc9 Bug 1565524 - Stop setting unused autocompletesearchparam attribute. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D37847

--HG--
extra : moz-landing-system : lando
2019-07-12 11:53:39 +00:00
Ted Campbell
3274645afe Bug 1564932 - Fix XDRScript handling of lazy scripts. r=jandem
XDR should be a structural clone, so check if we have a lazy script
directly when deciding if it should be coded. Whether relazification
should be supported is a VM decision, not an XDR decision. This gives a
cleaner round-trip of data when using XDR.

Differential Revision: https://phabricator.services.mozilla.com/D37578

--HG--
extra : moz-landing-system : lando
2019-07-12 08:20:36 +00:00
Johann Hofmann
70071d243e Bug 1562575 - Part 3 - Test updates for content blocking section in browser-siteProtections.js. r=ewright
Differential Revision: https://phabricator.services.mozilla.com/D37557

--HG--
extra : moz-landing-system : lando
2019-07-12 10:27:38 +00:00
Johann Hofmann
0d0bc26e56 Bug 1562575 - Part 2 - Move content blocking section into the protections panel. r=ewright
This is a pretty big change on paper, but most of the lines are copy-pasted, with some small
adjustments to get the content blocking code comfortable in browser-siteProtections.js.

Differential Revision: https://phabricator.services.mozilla.com/D37556

--HG--
extra : moz-landing-system : lando
2019-07-12 10:27:24 +00:00
Johann Hofmann
230d70e54a Bug 1562575 - Part 1 - Remove content blocking telemetry events from identity popup telemetry. r=ewright
This lives in the protections popup now and will get a new probe.

Since I'm only removing data collection I don't think a data steward is required to sign off.

I'm removing recordClick calls in identityPanel.inc.xul in a later patch.

Differential Revision: https://phabricator.services.mozilla.com/D37555

--HG--
extra : moz-landing-system : lando
2019-07-12 10:27:05 +00:00
Paul Adenot
c74b95c375 Bug 1350973 - Implement new attributes MediaStreamAudioSourceNode.mediaStream and MediaElementAudioSourceNode.mediaElement. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D37283

--HG--
extra : moz-landing-system : lando
2019-07-11 20:09:58 +00:00
Paul Adenot
6d8671ebb8 Bug 1564422 - Change outputLatency and getOutputTimestamp when resistFingerPrinting is enabled. r=tjr
When Firefox is configured to resist fingerprinting, the latency figure returned
is the most commonly found on a particular OS.

For Android, I got data from [0], roughly copy/pasted the table into a file and
did:

```
cat file | cut -d $'\t' -f4 | grep "^[[:digit:]]" | cut -d ' ' -f 1 | sort -h
| uniq -c | sort -h
```

which indicated that 40ms was a good number for round trip latency (input to
output). Since this is for output latency only and the audio path
is roughly symmetrical in terms of duration, we report 20ms.

For OSX, 512 is always used with the default hardware in Firefox, with this
patch, it's always 512 regardless of the setup.

On Linux/Pulse, we use 25ms [1] always, and this is adjusted by PulseAudio. This
makes it always return 25ms.

On Windows, there is a wide variety of configurations, but it's common to be in
the ballpark of 80ms output (this is very empirical, by testing a bunch of
hardware over the years).

For other OSes, we use 2048 frames (adjusted to the sample-rate).

[0]: https://superpowered.com/latency
[1]: https://searchfox.org/mozilla-central/source/media/libcubeb/src/cubeb_pulse.c#725

Differential Revision: https://phabricator.services.mozilla.com/D37723

--HG--
extra : moz-landing-system : lando
2019-07-12 11:27:25 +00:00