Emilio Cobos Álvarez
1c58e2a928
Bug 1773070 - Unify Gecko and Servo EventState/ElementState bits. r=smaug
...
Add a dom/base/rust crate called just "dom" where we can share these.
Most of the changes are automatic:
s/mozilla::EventStates/mozilla::dom::ElementState/
s/EventStates/ElementState/
s/NS_EVENT_STATE_/ElementState::/
s/NS_DOCUMENT_STATE_/DocumentState::/
And so on. This requires a new cbindgen version to avoid ugly casts for
large shifts.
Differential Revision: https://phabricator.services.mozilla.com/D148537
2022-06-07 23:09:52 +00:00
june wilde
5ed20b4307
Bug 1731614 - Clarify error phrasing in NoSupportedMediaSourceError; r=ckerschb,dveditz
...
Differential Revision: https://phabricator.services.mozilla.com/D145576
2022-05-23 21:27:48 +00:00
Kagami Sascha Rosylight
ca80f84bf8
Bug 1767996 - Apply readability-make-member-function-const on dom/html r=smaug
...
Differential Revision: https://phabricator.services.mozilla.com/D145627
2022-05-13 05:35:25 +00:00
az
92ad30e0bc
Bug 1652950 - Unprefix mozPreservesPitch, update corresponding tests r=emilio,saschanaz
...
Differential Revision: https://phabricator.services.mozilla.com/D143237
2022-04-20 18:43:47 +00:00
ashley
2458bfed11
Bug 1744398 - Media element load algorithm must fire 'emptied' before 'timeupdate' r=alwu
...
Differential Revision: https://phabricator.services.mozilla.com/D142628
2022-04-01 18:26:05 +00:00
Bryce Seager van Dyk
a9985759da
Bug 1724106 - Clarify threading usage when getting media debug info. r=alwu
...
Differential Revision: https://phabricator.services.mozilla.com/D124104
2022-03-29 22:17:58 +00:00
Paul Adenot
6f5a211ec1
Bug 1272636 - Reset HTMLMediaElement.played when loading a new source. r=media-playback-reviewers,alwu
...
Differential Revision: https://phabricator.services.mozilla.com/D139925
2022-03-08 13:05:28 +00:00
Paul Adenot
65248351ec
Bug 1630569 - Change the limit at which audio is muted with high or low playback rates, and make it and other parameters configurable via prefs. r=alwu
...
Differential Revision: https://phabricator.services.mozilla.com/D135066
2022-01-05 18:11:58 +00:00
Masayuki Nakano
628f3ba93c
Bug 1455514 - part 1: Add accessors and static helper methods to retrieve nsINode or its concrete classes from EventTarget r=smaug
...
Currently, checking whether an `EventTarget` is `nsINode` (or its concrete
classes) or not requires a QI, but it's expensive and used a lot while we
handle each event. Therefore, it'd be nicer for creating a virtual method,
`EventTarget::IsNode()` and use it for the check.
If trying to convert `EventTarget` to a concrete class, it may require two
virtual method calls. I'm not sure whether it's cheaper than a QI, but at
least, it won't depend on the UUID check order of `QueryInterface()` when
multiple interfaces are implemented.
Differential Revision: https://phabricator.services.mozilla.com/D129781
2021-11-02 13:03:43 +00:00
Jeff Muizelaar
170874e13c
Bug 1736077 - Remove unusued LayerManager.cpp. r=gfx-reviewers,lsalzman
...
Differential Revision: https://phabricator.services.mozilla.com/D128632
2021-10-17 01:28:41 +00:00
Paul Adenot
fa471bffbf
Bug 1678373 - Add a way to measure the duration a media was muted. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125088
2021-10-12 09:03:53 +00:00
Paul Adenot
378544d209
Bug 1678373 - Expose audio telemetry counters as chrome-only attributes like their video counterparts. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125084
2021-10-12 09:03:52 +00:00
Paul Adenot
f847331ea9
Bug 1678373 - Rename chrome-only telemetry counter attributes to distinguish audio and video. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125083
2021-10-12 09:03:52 +00:00
Alexandru Michis
49a60b8e39
Backed out 24 changesets (bug 1678373) for causing bc failures in browser_tab_visibility_and_play_time.js
...
CLOSED TREE
Backed out changeset 1886dbd81c46 (bug 1678373)
Backed out changeset aeff26b5b1ae (bug 1678373)
Backed out changeset 261d8e4483d4 (bug 1678373)
Backed out changeset 89cb5ae23632 (bug 1678373)
Backed out changeset b1eaedd192ab (bug 1678373)
Backed out changeset 58a3eb19c818 (bug 1678373)
Backed out changeset b027ec789cbe (bug 1678373)
Backed out changeset fd596a84feb9 (bug 1678373)
Backed out changeset 1f0ed0392ae2 (bug 1678373)
Backed out changeset ac2be1df81af (bug 1678373)
Backed out changeset bf6d47905d78 (bug 1678373)
Backed out changeset a9fe4f310962 (bug 1678373)
Backed out changeset a15316058968 (bug 1678373)
Backed out changeset 217cdfd46120 (bug 1678373)
Backed out changeset c33c8411129b (bug 1678373)
Backed out changeset 3b854fc36abf (bug 1678373)
Backed out changeset e47c82bcb49a (bug 1678373)
Backed out changeset 2a77cbba1c9f (bug 1678373)
Backed out changeset 65206afede36 (bug 1678373)
Backed out changeset bd04930155f4 (bug 1678373)
Backed out changeset 034e8edd4619 (bug 1678373)
Backed out changeset ed1e56487c4c (bug 1678373)
Backed out changeset b7673d20c521 (bug 1678373)
Backed out changeset 5a93251e2fea (bug 1678373)
2021-10-07 20:36:47 +03:00
Paul Adenot
027d553f00
Bug 1678373 - Add a way to measure the duration a media was muted. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125088
2021-10-07 15:44:54 +00:00
Paul Adenot
d4c37b39d0
Bug 1678373 - Expose audio telemetry counters as chrome-only attributes like their video counterparts. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125084
2021-10-07 15:44:53 +00:00
Paul Adenot
03580ad5e7
Bug 1678373 - Rename chrome-only telemetry counter attributes to distinguish audio and video. r=alwu,webidl,emilio
...
Differential Revision: https://phabricator.services.mozilla.com/D125083
2021-10-07 15:44:53 +00:00
Paul Adenot
51bf8da007
Bug 1733109 - function 'mozilla::dom::HTMLMediaElement::MozGetMetadata' has a definition with different parameter names in HTMLMediaElement.cpp. r=alwu
...
Depends on D126946
Differential Revision: https://phabricator.services.mozilla.com/D126947
2021-09-30 12:36:18 +00:00
Paul Adenot
054d2b2d5c
Bug 1733109 - narrowing conversion from 'double' to 'float' in HTMLMediaElement.cpp. r=alwu
...
Depends on D126945
Differential Revision: https://phabricator.services.mozilla.com/D126946
2021-09-30 12:36:18 +00:00
Paul Adenot
f33c519cf5
Bug 1733109 - 'auto cdmProxy' can be declared as 'auto *cdmProxy' in HTMLMediaElement.cpp. r=alwu
...
Depends on D126944
Differential Revision: https://phabricator.services.mozilla.com/D126945
2021-09-30 12:36:18 +00:00
Paul Adenot
174e8e196a
Bug 1733109 - do not use 'else' after 'return' in HTMLMediaElement.cpp. r=alwu
...
Depends on D126943
Differential Revision: https://phabricator.services.mozilla.com/D126944
2021-09-30 12:36:17 +00:00
Paul Adenot
31a266b246
Bug 1733109 - local copy 'handle' of the variable 'aPrincipalHandle' is never modified; consider avoiding the copy in HTMLMediaElement.cpp. r=alwu
...
Depends on D126942
Differential Revision: https://phabricator.services.mozilla.com/D126943
2021-09-30 12:36:17 +00:00
Paul Adenot
d447721daa
Bug 1733109 - 'auto decoder' can be declared as 'auto *decoder' in HTMLMediaElement.cpp. r=alwu
...
Depends on D126941
Differential Revision: https://phabricator.services.mozilla.com/D126942
2021-09-30 12:36:16 +00:00
Paul Adenot
25838fea3c
Bug 1733109 - 'auto decoder' can be declared as 'auto *decoder' in HTMLMediaElement.cpp. r=alwu
...
Depends on D126940
Differential Revision: https://phabricator.services.mozilla.com/D126941
2021-09-30 12:36:16 +00:00
Paul Adenot
d880a5593c
Bug 1733109 - move constructors should be marked noexcept HTMLMediaElement.cpp. r=alwu
...
We don't use exceptions anyways, but having no warnings allows warning us when
warnings appear, so let's fix this.
Depends on D126939
Differential Revision: https://phabricator.services.mozilla.com/D126940
2021-09-30 12:36:16 +00:00
Paul Adenot
aebb4f9f7f
Bug 1733109 - narrowing conversion from 'unsigned long' to signed type 'int32_t' (aka 'int') is implementation-defined HTMLMediaElement.cpp. r=pehrsons
...
Somewhat controversial, let me know what you think.
Differential Revision: https://phabricator.services.mozilla.com/D126939
2021-09-30 12:36:15 +00:00
Paul Adenot
531b921055
Bug 1733109 - redundant return statement at the end of a function with a void return type in HTMLMediaElement.cpp. r=alwu
...
Depends on D126937
Differential Revision: https://phabricator.services.mozilla.com/D126938
2021-09-30 12:36:15 +00:00
Paul Adenot
b2ca6eecb4
Bug 1733109 - narrowing conversion from 'double' to 'float' in HTMLMEdiaElement.cpp. r=alwu
...
Depends on D126935
Differential Revision: https://phabricator.services.mozilla.com/D126936
2021-09-30 12:36:14 +00:00
Paul Adenot
c2fee7c38b
Bug 1733109 - constructor does not initialize these fields: mOwnerBrowsingContextId in HTMLMEdiaElement.cpp. r=alwu
...
Depends on D126934
Differential Revision: https://phabricator.services.mozilla.com/D126935
2021-09-30 12:36:14 +00:00
Olli Pettay
744c63884d
Bug 1727514 - media playback should stop in the bfcache, r=peterv
...
This version doesn't change SetContainer handling, since it seems to be tricky for the top level page.
So only activity change notification is fired and IsActive() is updated.
The comment about IsActive() was wrong even with the old bfcache implementation.
(I did check that it returned false when the page was in bfcache and many of the activity observers rely on that)
The changes to HTMLMediaElement are needed to ensure page can enter bfcache..
Differential Revision: https://phabricator.services.mozilla.com/D124684
2021-09-20 08:49:22 +00:00
Sandor Molnar
d4735562cb
Backed out changeset 2d49d73f38aa (bug 1727514) for causing frequent crashes. a=backout
2021-09-16 15:52:56 +03:00
Olli Pettay
094c43801e
Bug 1727514 - media playback should stop in the bfcache, r=peterv
...
SetContainer handling is similar to what DocumentViewer does for the old bfcache implementation.
(The old implementation hides it quite well).
The changes to HTMLMediaElement are needed to ensure page can enter bfcache.
Removed erroneous MOZ_ASSERT in nsPresContext, it is ok to trigger that code path in the new implementation.
And the Run() method of the relevant nsIRunnable already deals with that case.
Differential Revision: https://phabricator.services.mozilla.com/D124684
2021-09-13 12:40:18 +00:00
Alexandru Michis
6edb9cdbad
Backed out 2 changesets (bug 1724106) for causing Bug 1728715.
...
CLOSED TREE
Backed out changeset 81d1db229eea (bug 1724106)
Backed out changeset 8ed4675541c6 (bug 1724106)
2021-09-02 21:03:07 +03:00
Bryce Seager van Dyk
2d657c0e6c
Bug 1724106 - Clarify threading usage when getting media debug info. r=alwu
...
Differential Revision: https://phabricator.services.mozilla.com/D124104
2021-09-01 22:29:48 +00:00
alwu
5cfc0d13d0
Bug 1723799 - part2 : add test. r=padenot,webidl,smaug
...
Differential Revision: https://phabricator.services.mozilla.com/D121681
2021-08-09 19:30:12 +00:00
Kagami Sascha Rosylight
e826dafcc0
Bug 1723050 - Part 14: Replace typedef by using in dom/html/ r=smaug
...
Differential Revision: https://phabricator.services.mozilla.com/D121312
2021-08-09 13:37:27 +00:00
Karl Tomlinson
f13b8d830a
Bug 1577199 apply speaker-selection feature policy r=jib
...
Differential Revision: https://phabricator.services.mozilla.com/D119867
2021-08-02 00:13:57 +00:00
Tooru Fujisawa
0986662ce6
Bug 1708448 - Move property and element functions into js/public/PropertyAndElement.h. r=nbp
...
Differential Revision: https://phabricator.services.mozilla.com/D119619
2021-07-13 11:52:42 +00:00
Karl Tomlinson
da8ba7f503
Bug 1493982 accept only sinkIds exposed via enumerateDevices() r=jib
...
and reject with NotFoundError otherwise.
Depends on D118444
Differential Revision: https://phabricator.services.mozilla.com/D118445
2021-07-06 23:37:33 +00:00
Karl Tomlinson
5bdd503601
Bug 1493982 move GetSinkDevice() to MediaDevices for access to device exposure history r=jib
...
Depends on D118443
Differential Revision: https://phabricator.services.mozilla.com/D118444
2021-07-06 23:37:32 +00:00
Paul Adenot
40411a55fc
Bug 1703603 - Handle HTMLMediaElement playing MediaSource when using mozCaptureStreamUntilEnded. r=bryce
...
This means keeping a reference to the MediaSource object in the MediaStream to
ensure it's being kept alive for the duration of the playback.
Differential Revision: https://phabricator.services.mozilla.com/D112607
2021-06-02 14:20:40 +00:00
Olli Pettay
b389e97d73
Bug 1705080, make MediaStreams behave as normal EventTargets, r=jib
...
Differential Revision: https://phabricator.services.mozilla.com/D115269
2021-05-18 16:21:27 +00:00
Csoregi Natalia
fc66d64fc6
Backed out 2 changesets (bug 1693250) for failures on test_recreate_media_sink_audible_change.html. CLOSED TREE
...
Backed out changeset 0e0f90271853 (bug 1693250)
Backed out changeset 45cd86944c9f (bug 1693250)
2021-05-06 01:14:51 +03:00
alwu
6916c7326f
Bug 1693250 - part2 : reset the audible state when the audio sink get shutdown. r=bryce
...
When the audio sink shutdown, we should also reset the audible state for the listeners. Otherwise, MediaDecoderStateMachine would possibly rely on the incorrect audible state that is produced by previous sink, which would cause showing the sound indicator even if no sound is being playing.
Eg.
Considering following case without the reset of the audible state
1. Sink A is audible -> MDSM set `mIsAudioDataAudible=true`
2. Stop sink
3. Recreate sink B and it's playing silence -> MDSM's `mIsAudioDataAudible=true` is still true, this is wrong!
Differential Revision: https://phabricator.services.mozilla.com/D113550
2021-05-05 20:07:07 +00:00
alwu
d9df2fb9a2
Bug 1689741 - not controlling the real-time media via the media control. r=padenot
...
Differential Revision: https://phabricator.services.mozilla.com/D112668
2021-04-20 16:47:41 +00:00
Brendan Early
5725b6792c
Bug 1120222 - Set AudioSink name to title of MediaElement's parent r=padenot
...
Differential Revision: https://phabricator.services.mozilla.com/D93462
2021-04-19 15:17:26 +00:00
Peter Van der Beken
2ed1ecb468
Bug 1696158 - Move CanSavePresentation to the parent process. Keep track of various flags for deciding whether to put a page in BFCache. r=smaug
...
Differential Revision: https://phabricator.services.mozilla.com/D110231
2021-04-19 14:50:54 +00:00
smolnar
b8fdbb0df4
Backed out 8 changesets (bug 1696158) for causing multiple failures. CLOSED TREE
...
Backed out changeset 09c598c8fd29 (bug 1696158)
Backed out changeset 02f956c26901 (bug 1696158)
Backed out changeset b61a3a324cce (bug 1696158)
Backed out changeset 95810ed7f1e5 (bug 1696158)
Backed out changeset 4f93a7b61496 (bug 1696158)
Backed out changeset c80c55b56f2a (bug 1696158)
Backed out changeset 11627c409882 (bug 1696158)
Backed out changeset b98b4316a510 (bug 1696158)
2021-04-19 17:04:08 +03:00
Peter Van der Beken
03373996de
Bug 1696158 - Move CanSavePresentation to the parent process. Keep track of various flags for deciding whether to put a page in BFCache. r=smaug
...
Differential Revision: https://phabricator.services.mozilla.com/D110231
2021-04-19 12:39:19 +00:00
Paul Adenot
22c499277c
Bug 1701276 - Adjust currentSrc behaviour to match the spec more closely. r=bryce
...
Firefox and Chrome support setting `src` with an `ObjectURL`. This is
technically a URL and should be treated as such. Firefox recently changed to
return `""` when a `MediaSource` is playing, and this is wrong, because even
though it's playing a from a "Media Provider Object", it got loaded from the
`src` attribute, so should have a non-null `currentSrc`, which should be the
blob url (`blob:origin/<an uuid>`). In this case, `currentSrc` is a string that
is opaque and doesn't allow introspection but refers to the "real" `MediaSource`
or `Blob`.
If the same `MediaSource` is loaded via the `srcObject` attribute (that Firefox
and Chrome don't support), then `currentSrc` should return `""` and `srcObject`
still has the object set to it to understand what the HTMLMediaElement is
playing. We'll implement and test this later.
Differential Revision: https://phabricator.services.mozilla.com/D110290
2021-04-01 12:28:50 +00:00