Граф коммитов

61304 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 045eb695b0 Bug 1350050: Remove unneeded nsTextFrame casts in ContentEventHandler. r=smaug
MozReview-Commit-ID: FcSYAuQSHUt

--HG--
extra : rebase_source : 41b23e164e721334923a0f3f16e65be80d4f667f
2017-03-23 20:41:58 +01:00
Bobby Holley 887595286b Bug 1350115 - Squelch post-traversal generated by additional animation traversals when we're styling a fresh subtree. r=heycam,r=birtles
This patch exists to avoid a crash in layout/style/test/test_animations.html. We end up
generating some ::before content, which causes us to style the new subtree at [1]. In
StyleNewSubtree, we fail the !postTraversalRequired assertion because
PrepareAndTraverseSubtree decided to traverse the tree twice (once to style it, and again
to restyle it for animations), and return that a post-traversal is needed.

The reason this issue happens with my NAC patches and not without is that we were previously
filtering out generated ::before content from the servo traversal, so the servo traversal
wouldn't have reached it and (presumably) the animation restyle wouldn't have happened and
we wouldn't have returned true for needing a post-traversal.

[1] http://searchfox.org/mozilla-central/rev/c48398abd9f0f074c69f2223260939e30e8f99a8/layout/base/nsCSSFrameConstructor.cpp#1918

MozReview-Commit-ID: 8tgzLjV8B3A
2017-03-24 09:40:30 -07:00
Carsten "Tomcat" Book 361ed3a53c Merge mozilla-central to autoland 2017-03-24 14:30:43 +01:00
Carsten "Tomcat" Book 7419b36815 merge mozilla-inbound to mozilla-central a=merge 2017-03-24 14:24:21 +01:00
Iris Hsiao 26a234de5d Backed out 6 changesets (bug 1347758) for eslint failure
Backed out changeset 9becd55242c1 (bug 1347758)
Backed out changeset 2abce19f5001 (bug 1347758)
Backed out changeset 80232d4c85d5 (bug 1347758)
Backed out changeset 1fd084ec34d4 (bug 1347758)
Backed out changeset cafb3c12027b (bug 1347758)
Backed out changeset 85846edfe957 (bug 1347758)
2017-03-24 16:58:08 +08:00
Jan-Ivar Bruaroey ee60830406 Bug 1349480 - s/NotSupportedError/TypeError for getUserMedia({}) r=jesup
MozReview-Commit-ID: 7bJA01u7F0K

--HG--
extra : rebase_source : 383fcf039842bdefac682b4839a04ee8bf5e296c
2017-03-22 08:41:33 -04:00
Jean-Yves Avenard 925cb2babd Bug 1350148: [AAC] Don't set channel count on output decoder. r=gerald
Windows AAC decoder decode a mono AAC stream into a stereo PCM. Bug 1347101 set the output to be mono, which caused a failure to find the appropriate IMFMediaType.

This partially revert bug 1347101 audio changes.

MozReview-Commit-ID: 2M4X4rKKvXl

--HG--
extra : rebase_source : 6b7330a7edfc2c0504171828526221dcccb6f8c5
2017-03-24 09:48:07 +01:00
Alastor Wu d8197f5d08 Bug 1347758 - part4 : add audio channel log. r=Ehsan
MozReview-Commit-ID: 3zVYtD86O82

--HG--
extra : rebase_source : 3a7726760d6e4941cdbe2e6c9ee7132420482bb4
2017-03-24 14:44:18 +08:00
Alastor Wu 9685905d96 Bug 1347758 - part3 : should notify media block for audible agent in the first time. r=Ehsan
When the agent is audible, we should check whether need to notify "blockStart"
immediately.

MozReview-Commit-ID: KmYLo9cEt4X

--HG--
extra : rebase_source : 71ad5892a30727f00fd3c764d83ade074bc85f15
2017-03-24 14:43:55 +08:00
Alastor Wu 7c05349889 Bug 1347758 - part2 : remove add/removeMediaContent() and related codes. r=Ehsan
Since the window would know when need to resume the media, we don't need the
add/removeMediaContent() anymore.

MozReview-Commit-ID: F9MSiqqnOiV

--HG--
extra : rebase_source : fa86b3977e13d1f2a6b6233b6d608ccc331b5bf7
2017-03-24 14:43:40 +08:00
Alastor Wu aea1603b61 Bug 1347758 - part1 : window should know whehter there is any alive media component and decide to resume the tab or not. r=Ehsan
We should let window decide whether resume the media component, not document.
Because we might have media component which is not in DOM tree, but we still
want to play it.

Window should be resumed when all following conditions are true,
(1) the tab is in the foreground
(2) there is any alive media component (MediaElement/WebAudio/PlugIn...)
(3) the window is blocked (nsISuspendedTypes::SUSPENDED_BLOCK)

MozReview-Commit-ID: JXw5MA4FCxF

--HG--
extra : rebase_source : 953eed775637a19c6d5d323ab1549f6ed5f7ff31
2017-03-24 14:43:26 +08:00
Chris Pearce 0901ad8256 Bug 1315850 - Ask the GMPService for the GMP thread in GMPParent::ChildTerminated. r=gerald
When we shutdown the browser while the GMPService is active we can end up
leaking a GMPParent, GeckoMediaPluginServiceParent, and a Runnable. I tracked
this down to the runnable dispatched to the GMP thread in
GMPParent::ChildTerminated(). The dispatch of this runnable is failing as we
are dispatching the runnable to a reference of the GMP thread which we have
previously acquired, but that thread is now shutdown. So the dispatch fails,
and if you look in nsThread::DispatchInternal() you'll see that we deliberately
leak the runnable if dispatch fails! The runnable leaking means that the
references it holds to the GMPParent and the GMP service parent leak.

The solution in this patch is to not cache a reference to the GMP thread on the
GMPParent; instead we re-request the GMP thread from the GMPService when we
want it. This means that in the case where the browser is shutting down,
GMPParent::GMPThread() will return null, and we'll not leak the runnable. We'll
then follow the (hacky) shutdown path added in bug 1163239.

We also need to change GMPParent::GMPThread() and GMPContentParent::GMPThread()
to return a reference to the GMP thread with a refcount held on it, in order
to ensure we don't race with the GMP service shutting down the GMP thread
while we're trying to dispatch to in on shutdown.

MozReview-Commit-ID: CXv9VZqTRzY

--HG--
extra : rebase_source : e507e48ee633cad8911287fb7296bbb1679a7bcb
2017-03-24 13:38:00 +13:00
Alastor Wu e81c17d1b2 Bug 1347758 - part4 : add audio channel log. r=Ehsan
MozReview-Commit-ID: LNXzRZx2rC2

--HG--
extra : rebase_source : eef0ad3d65161c422d3cab57e6e081796452bdd1
2017-03-24 12:04:15 +08:00
Alastor Wu 1119f7369f Bug 1347758 - part3 : should notify media block for audible agent in the first time. r=Ehsan
When the agent is audible, we should check whether need to notify "blockStart"
immediately.

MozReview-Commit-ID: KmYLo9cEt4X

--HG--
extra : rebase_source : 5f29de593b85113001552ff0497621e603b40bc6
2017-03-24 12:04:00 +08:00
Alastor Wu 8591f98cad Bug 1347758 - part2 : remove add/removeMediaContent() and related codes. r=Ehsan
Since the window would know when need to resume the media, we don't need the
add/removeMediaContent() anymore.

MozReview-Commit-ID: F9MSiqqnOiV

--HG--
extra : rebase_source : 28a8312373054b8e29b93267677de99dd862a074
2017-03-24 12:01:46 +08:00
Alastor Wu 8b4c678479 Bug 1347758 - part1 : window should know whehter there is any alive media component and decide to resume the tab or not. r=Ehsan
We should let window decide whether resume the media component, not document.
Because we might have media component which is not in DOM tree, but we still
want to play it.

Window should be resumed when all following conditions are true,
(1) the tab is in the foreground
(2) there is any alive media component (MediaElement/WebAudio/PlugIn...)
(3) the window is blocked (nsISuspendedTypes::SUSPENDED_BLOCK)

MozReview-Commit-ID: JXw5MA4FCxF

--HG--
extra : rebase_source : 416113dd2282a979ea26c4694878c2f2db578274
2017-03-24 12:01:43 +08:00
Ting-Yu Lin 4e375689c6 Bug 1322570 Part 4 - Use GetParentAllowServo() in KeyframeEffectReadOnly::UpdateProperties. r=hiro
Per bug 1322570 Comment 7, we could drop the GetParentAllowServo() when we
invoke UpdateProperties() from a SquentialTask, so allow it for now.

MozReview-Commit-ID: 52NauGaz4Zv

--HG--
extra : rebase_source : 617c3310a042ca49023ebad1801a2c283e4e212c
2017-03-20 14:13:01 +08:00
JW Wang b783d4fca2 Bug 1350203. P6 - rename SWARN to SLOGW. r=kaku
MozReview-Commit-ID: HEPJ6Ktj8UH

--HG--
extra : rebase_source : 0eda6d4aaf1b7adcda937a1d2e99a332dc3e76e3
2017-03-24 12:42:49 +08:00
JW Wang 5274c2cb96 Bug 1350203. P5 - replace SAMPLE_LOG with LOGV. r=kaku
We often need to turn on both MediaSample and MediaDecoder logs when debugging sample activities.
So it is convenient to merge them into a single log module.

Use `MOZ_LOG=MediaDecoder:4` to show decoder logs.
use `MOZ_LOG=MediaDecoder:5` to show both decoder and sample logs.

MozReview-Commit-ID: JQtyoyrNRmV

--HG--
extra : rebase_source : 85739da85aa4059b058a9baccd5509c8149712d8
2017-03-24 11:58:37 +08:00
JW Wang a69e7de100 Bug 1350203. P4 - change the level of MediaSink logs. r=kaku
1. Use LOG() for OnMediaSink{Audio,video}Complete() which is not verbose.
2. Use LOGW() for OnMediaSink{Audio,Video}Error() which indicates an error.

MozReview-Commit-ID: 4Z5U32YlMPB

--HG--
extra : rebase_source : 2b2da51c17b6c7d9b4ec8b0f274c9ed018631374
2017-03-24 11:43:57 +08:00
JW Wang 83dc3dc981 Bug 1350203. P3 - rename DECODER_WARN to LOGW. r=kaku
MozReview-Commit-ID: 3dstP1KkBJh

--HG--
extra : rebase_source : ad40556a87cd205bd94331c396f7a2255c4a6d44
2017-03-24 11:38:22 +08:00
JW Wang 2641e73ea3 Bug 1350203. P2 - rename VERBOSE_LOG to LOGV. r=kaku
MozReview-Commit-ID: IM8t69P5dU4

--HG--
extra : rebase_source : dc6325c87c368079c766f884551db1baba67c7f9
2017-03-24 11:35:45 +08:00
JW Wang 3fd71fee63 Bug 1350203. P1 - rename DECODER_LOG to LOG. r=kaku
MozReview-Commit-ID: nL4fiALn5N

--HG--
extra : rebase_source : c61b084c062aa0da6551c1f06cb10353518dd995
2017-03-24 11:33:06 +08:00
JW Wang 79d42d9703 Bug 1350202 - use shorter names for logging macros in MediaDecoder.cpp. r=kaku
MozReview-Commit-ID: E2OnbXb82Zb

--HG--
extra : rebase_source : d1de2002a7bb446b10aaeb4e03a56ce3a63f6ae4
2017-03-24 11:17:17 +08:00
Mats Palmgren 2dd8c9d161 Bug 1333482 part 6 - [css-ui] Manually tweak some tests for 'appearance' changes. r=dholbert
MozReview-Commit-ID: 9cBAQIeS2TG
2017-03-23 22:11:25 -07:00
Mats Palmgren 00b74113a3 Bug 1333482 part 4 - [css-ui] Amend all uses of '-moz-appearance:none' in tests to also specify 'appearance:none' (automated change). r=dholbert
MozReview-Commit-ID: BNOR5VRpV2E
2017-03-23 22:11:22 -07:00
Kartikaya Gupta b6566b9f0c Bug 1349949 - Turn some advanced layers prefs into override prefs. r=mchang
This allows us to remove the #ifdef MOZ_ENABLE_WEBRENDER for the advanced layers
prefs from all.js. As additional advanced layers are turned on for webrender (or
non-webrender) they can be converted into override prefs without affecting the
call sites.

MozReview-Commit-ID: F9tMc23ow8A

--HG--
extra : rebase_source : 2244cb000711496ce5b7f1b50ef0314e1c312d94
2017-03-23 16:29:54 -04:00
Chris Pearce 6d19fe826f Bug 1315850 - Port the work around from Bug 1343140 to the new CDM video decoder architecture. r=gerald
MozReview-Commit-ID: EV0bieXIxYM

--HG--
extra : rebase_source : 404709f1aee80465a953fce1a1e715d49ebfbe35
2017-03-14 17:17:05 +13:00
Chris Pearce e156a08c17 Bug 1315850 - Rename DetailedPromise Status enum. r=gerald
X11.h #defines 'Status' and 'Failed' and 'Succeeded' which conflicts with
the enum in DetailedPromise. So rename the 'Status' enum in DetailedPromise
so that the build works on Linux.

Some of my changes here caused DetailedPromise to be included in more
places that it was before, which caused build failures on Linux.

MozReview-Commit-ID: KV5xKixXR3J

--HG--
extra : rebase_source : ef6cab901d74b78f613660f263f5e453d6044536
2017-03-13 10:42:36 +13:00
Chris Pearce caac622c6d Bug 1315850 - Implement CDM persistent sessions. r=gerald
This is required for the browser clearing persistence tests to pass.

MozReview-Commit-ID: Ai9qc6Ds1IG

--HG--
extra : rebase_source : 80c2133e26742410fda983e3c18c35736fc013d0
2017-03-09 19:09:43 +13:00
Chris Pearce cfe7c116ce Bug 1315850 - Hook up CDM storage. r=gerald
MozReview-Commit-ID: 9gHcMZvmMfg

--HG--
extra : rebase_source : 186f35455264aaa144fd7b1887b8ca2476ac03b2
2017-03-22 16:30:54 +13:00
Chris Pearce bf0e67458a Bug 1315850 - Shutdown ChromiumCDMParent. r=gerald
MozReview-Commit-ID: E82ETFS90eH

--HG--
extra : rebase_source : 6f0d72f76e313b55f7c905d5878c63b8d7292b1b
2017-03-09 17:34:18 +13:00
Chris Pearce 4c421503a8 Bug 1315850 - Shutdown CDMVideoDecoder. r=jya
This severs the ChromiumCDMVideoDecoder's connection with the CDM. The CDM process
will shutdown when the MediaKeys also severs its connection.

MozReview-Commit-ID: Aqc4y5Nxjvc

--HG--
extra : rebase_source : 5a2f77ffe84f9b99b4668520c838b29a428578d3
2017-03-08 10:20:33 +13:00
Chris Pearce dbc1c7bcdf Bug 1315850 - Implement CDM video decoder drain. r=jya
MozReview-Commit-ID: 5RbrWyLglRf

--HG--
extra : rebase_source : 3f9636503523f0c6effab15fa89cce25a961a0b4
2017-03-07 16:37:21 +13:00
Daosheng Mu 62781e3b7d Bug 1299937 - Part 6: Handle Stop vibrating when the window defoucses; r=qdot
MozReview-Commit-ID: Kvd40jnSPvK

--HG--
extra : rebase_source : f9ce4c68fd07376b8e18cbab08718c49d6fed455
2017-03-07 10:17:57 +08:00
Chris Pearce abcd1aee62 Bug 1315850 - Implement CDM video decoder flush. r=jya
MozReview-Commit-ID: 3CzwfOCXGP

--HG--
extra : rebase_source : 8ee1ae28a36779484717c6b105ef7730dd1896b3
2017-02-14 22:42:26 +13:00
Chris Pearce 6f73601a0b Bug 1315850 - Implement video decoding through CDM. r=jya
At this stage, I store video frames in memory in nsTArrays rather than in
shmems just so we can get this working. Once this is working, I'll follow up
with patches to switch to storing all large buffer traffic between the CDM and
other processes in shmems.

I'm not planning on preffing this new CDM path on until that's in place.

MozReview-Commit-ID: LSTb42msWQS

--HG--
extra : rebase_source : b7f162515a1a32b2c344c11d0fa5c7004cec2e15
2017-03-09 11:32:15 +13:00
Chris Pearce a181e5dc64 Bug 1315850 - Initialize video decoder. r=jya
MozReview-Commit-ID: 559SP0ECldq

--HG--
extra : rebase_source : b6d499cafef2d6a6558b0db703b60320dea67803
2017-03-09 18:17:50 +13:00
Chris Pearce 33d324d5b1 Bug 1315850 - Add threadsafe ChromiumCDMProxy::GetCDMParent. r=gerald
The MediaKeys accesses the ChromiumCDMProxy on the main thread. But the
ChromiumCDMVideoDecoder will need to access the ChromiumCDMProxy on the decode
task queue in order to get a reference to the ChromiumCDMParent so that it can
talk to the CDM (on the GMP thread).

Additionally we'll need to shutdown the ChromiumCDMProxy, and if we do that
on the main threrad while the ChromiumCDMVideoDecoder is trying to get the
ChromiumCDMParent reference, we could hit thread safety issues.

So we need to hold a lock while reading or writing from the ChromiumCDMProxy's
reference to the ChromiumCDMParent. So add a GetCDMParent() function to the
ChromiumCDMProxy which takes the lock while reading or writing the reference.

This means that the caller will always get a valid reference. There is no guarantee
that the ChromiumCDMParent isn't shutdown after the reference is taken; if that
happens, the ChromiumCDMParent returned will fail on all operations.

In a later patch in this series, the ChromiumCDMProxy will anull its reference
to the ChromiumCDMParent on shutdown, and cause GetCDMParent to return null.
So callers need to null check the return value of GetCDMParent.

MozReview-Commit-ID: 4xL41YbwkxL

--HG--
extra : rebase_source : aa854e9d88965d7da60231d6f6a3912bf6ad2eeb
2017-03-13 13:47:20 +13:00
Chris Pearce 42faf7c8fa Bug 1315850 - Create CDM video decoder in EMEDecoderModule. r=jya
MozReview-Commit-ID: 3xgFxg1WfmY

--HG--
extra : rebase_source : 018abf2b8e1b351a29ba62275a2681fe9ea4fc24
2017-03-08 16:20:09 +13:00
Chris Pearce ffe9c27064 Bug 1315850 - Stub out ChromiumCDMVideoDecoder. r=jya
MozReview-Commit-ID: 6I9N1c1nNMF

--HG--
extra : rebase_source : 6c5a3706b37e122a67e5ec1670587f37e25a1bc6
2017-03-09 18:17:14 +13:00
Daosheng Mu 3809301030 Bug 1299937 - Part 5: Add gamepad extension API tests; r=Lenzak,qdot
MozReview-Commit-ID: ICeDyGUn4XH

--HG--
extra : rebase_source : 365b47581bd44c70be9d8bbefdc4236191abb3a9
2017-02-02 15:00:51 +08:00
Daosheng Mu c1d89a986e Bug 1299937 - Part 4: Handling vibrate haptic promise in VRManager; r=qdot
MozReview-Commit-ID: 3KZ8MNx3Dnq

--HG--
extra : rebase_source : 1b11f7948da7477e31f7448878a6d5874ba69087
2017-02-02 14:59:44 +08:00
Daosheng Mu 49b8854fd8 Bug 1299937 - Part 2: Support gamepad haptic in GamepadManager; r=kip,Lenzak,qdot
MozReview-Commit-ID: 7duCrsFLVX6

--HG--
extra : rebase_source : 065c643393799249407a6d17b443222a8499873a
2017-02-02 14:33:18 +08:00
Daosheng Mu 9cf81ce92e Bug 1299937 - Part 1: Implement GamepadHapticActuator in Gamepad API; r=qdot
MozReview-Commit-ID: GJZvgxSBVlB

--HG--
extra : rebase_source : 8d7c36b469a791337d7eec2c372a0c40fddb9c62
2017-02-02 14:30:58 +08:00
J.C. Jones d183667c00 Bug 1342258 - Refactor SetDomain to IsRegistrableDomainSuffixOfOrEqualTo r=smaug
This commit refactors the SetDomain method in a Document to call a new function
IsRegistrableDomainSuffixOfOrEqualTo(), defined in HTML [1]. This commit tries
not to rename anything except input variables, so as to remain as clear as
possible. It likely should have various variables renamed, but given the
author's unfamiliarity with this module, review seems a good time to do that.
It's also duplicating comments a little bit; let me know which one(s) you'd like
to keep!

Note: Commentary on the HTML change is available in the PR [2], and the
rationale for this behavior in Web Auentication, where this algorithm will be
used, is also recorded [3].

Update 1: Refactored two new protected methods to avoid code duplication.
Update 2: Bugfix: Be sure to use CreateInheritingURIForHost for the
provided domain so as to catch internationalized domains.
Update 3: Nit-fix and rebase

[1] https://html.spec.whatwg.org/multipage/browsers.html#is-a-registrable-domain-suffix-of-or-is-equal-to
[2] https://github.com/whatwg/html/pull/2365
[3] https://github.com/w3ctag/spec-reviews/issues/97#issuecomment-175766580

MozReview-Commit-ID: 4Dr8yOMdhez

--HG--
extra : rebase_source : 634bd3c7b60c7ad996ee38ab7314071b426e3f6f
2017-03-07 09:37:34 -07:00
Wes Kocher 2ea6238e55 Merge inbound to central, a=merge
MozReview-Commit-ID: 6od53T3ozcm
2017-03-23 16:15:37 -07:00
Wes Kocher 1087616d0e Merge autoland to m-c a=merge
MozReview-Commit-ID: 2zUGojOEVNi
2017-03-23 16:05:15 -07:00
Andrea Marchesini 7524cbfde8 Bug 1349979 - Remove OptionalID from DOMTypes.ipdlh, r=qdot 2017-03-23 19:17:44 +01:00
Wes Kocher cc9886af29 Merge graphics to m-c a=kats
MozReview-Commit-ID: 9kKfHoyG8kj
2017-03-23 10:36:55 -07:00