Commit Graph

340 Commits

Author SHA1 Message Date
Bobby Holley
5c965d3bd4 Bug 1216308 - Hoist IsCallerChrome check in HTMLMediaElement::Play to API entry point. r=bz 2015-10-19 17:54:46 -07:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Andrea Marchesini
0ed5d72754 Bug 1214659 - HTMLMediaElement::UpdateAudioChannelPlayingState() should be easy to read, r=roc 2015-10-15 00:59:00 +02:00
JW Wang
582b648a0d Bug 1214065 - Remove unused arguments from MediaDecoder::Load() and its friends. r=kinetik. 2015-10-14 11:46:27 +08:00
Andreas Pehrson
be6c681846 Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.
2015-09-30 09:32:06 +08:00
Andreas Pehrson
9261227d49 Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.
2015-09-30 09:31:54 +08:00
Wes Kocher
954ce67cb5 Backed out 9 changesets (bug 1170958) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset 277c1f8098d1 (bug 1170958)
Backed out changeset aa86bb9eea95 (bug 1170958)
Backed out changeset 8af8b85a4b26 (bug 1170958)
Backed out changeset ec1bf225e9cb (bug 1170958)
Backed out changeset 4a04ddca2b6b (bug 1170958)
Backed out changeset e85c9977a311 (bug 1170958)
Backed out changeset 16b40ff04e8f (bug 1170958)
Backed out changeset ad206925c84a (bug 1170958)
Backed out changeset 2106eccec79b (bug 1170958)
2015-09-25 13:08:55 -07:00
Wes Kocher
0a9f4caf61 Backed out 7 changesets (bug 1103188) for frequent test_getUserMedia_addTrackRemoveTrack.html failures
Backed out changeset f0f33a8ef14c (bug 1103188)
Backed out changeset dbe0ebdebad5 (bug 1103188)
Backed out changeset bb656022a1a7 (bug 1103188)
Backed out changeset cc6b5f5ba444 (bug 1103188)
Backed out changeset ca97d52bf144 (bug 1103188)
Backed out changeset de8cc967f8eb (bug 1103188)
Backed out changeset 6da8f4905060 (bug 1103188)
2015-09-25 13:08:44 -07:00
Andreas Pehrson
5d4a30038f Bug 1103188 - Break out MediaTrackListListener to an interface. r=roc
Other modules than MediaTrackLists may want to receive updates on a
DOMMediaStream's track set. This moves the MediaTrackListListener out of
the MediaTrackList class into DOMMediaStream as a general interface.

The logic for adding MediaTracks to the MediaTrackList when
MediaStreamTracks are added or removed from a DOMMediaStream is moved to
HTMLMediaElement as this fits the model better - HTMLMediaElement is the
owner of the MediaTrackLists.
2015-09-25 23:23:31 +08:00
Andreas Pehrson
4132b4532f Bug 1170958 - Refactor DOMMediaStream to contain a 3-stage track chain. r=roc
This lets us separate tracks by ownership like so:
* Input    - Owned by the producer of the DOMMediaStream (gUM etc.)
* Owned    - Contains Input tracks (per above) or tracks cloned tracks
             if this DOMMediaStream is a clone.
* Playback - Contains Owned tracks plus tracks addTrack()ed to this
             DOMMediaStream minus tracks removeTrack()ed from this
             DOMMediaStream.
2015-09-25 23:23:18 +08:00
Gerald Squelart
f90ce6e64f Bug 1198435 - Call RemoveMediaElementFromURITable before modifying mLoadingSrc, so that a future LookupMediaElementURITable won't access this element anymore. r=rillian 2015-09-10 09:01:44 +02:00
Robert O'Callahan
6e3741b957 Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang 2015-08-31 23:33:53 +12:00
Ehsan Akhgari
5c52312be6 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 20:44:23 -04:00
Ehsan Akhgari
c62449cc00 Backout bug 1200208 for build bustage on a CLOSED TREE 2015-08-31 16:49:27 -04:00
Ehsan Akhgari
8ebd48792f Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 16:24:51 -04:00
Ryan VanderMeulen
8d905ff1e7 Backed out changeset 6b264cf230a0 (bug 1200208) for Windows bustage.
CLOSED TREE
2015-08-31 14:11:58 -04:00
Ehsan Akhgari
8711fed1f5 Bug 1200208 - Send the audio-playback notification when the page calls HTMLMediaElement::Play() before the metadata has been fully loaded; r=baku 2015-08-31 13:44:55 -04:00
Jan-Ivar Bruaroey
51ee816249 Bug 1175523 - Add HTMLMediaElement.srcObject alias to .mozSrcObject. r=roc, r=smaug 2015-07-14 00:04:14 -04:00
Randall Barker
3f3b4cacfb Bug 1178858 - Video would not playback after seek seekbar first if media.autoplay.enabled = false. r=cpearce
When autoplay is disabled, the media element was not detecting user
initiated seeking so when a script attempted to play after seeking,
playing would be blocked.
2015-07-24 15:56:00 +02:00
Paul Adenot
4a401910e1 Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Wes Kocher
548360d6f6 Backed out 14 changesets (bug 1156472) for test_getUserMedia_audioCapture.html failures on b2g emulator
Backed out changeset deec8eb18346 (bug 1156472)
Backed out changeset 0f5bec4c05ba (bug 1156472)
Backed out changeset 2dd83ac00bf9 (bug 1156472)
Backed out changeset abd4e47887f7 (bug 1156472)
Backed out changeset 4824d9874663 (bug 1156472)
Backed out changeset 12805598e6fa (bug 1156472)
Backed out changeset e2f0062a1f67 (bug 1156472)
Backed out changeset 99ef8e436a7f (bug 1156472)
Backed out changeset 65bbfc1546af (bug 1156472)
Backed out changeset 2ab4f16eaf0a (bug 1156472)
Backed out changeset 7f565685e20a (bug 1156472)
Backed out changeset 28c03c98cb2b (bug 1156472)
Backed out changeset d477cfba6e1d (bug 1156472)
Backed out changeset 9819fa56caa1 (bug 1156472)
2015-07-24 13:15:57 -07:00
Paul Adenot
26883126ea Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Carsten "Tomcat" Book
bc08472553 Backed out 14 changesets (bug 1156472) for bustage on a CLOSED TREE
Backed out changeset 2ddbf85a42c0 (bug 1156472)
Backed out changeset 306d02e17081 (bug 1156472)
Backed out changeset 03598139f39a (bug 1156472)
Backed out changeset 4b1e6069b598 (bug 1156472)
Backed out changeset 6c588a5eaaec (bug 1156472)
Backed out changeset 8c98d7beaea7 (bug 1156472)
Backed out changeset fbf59fbb5875 (bug 1156472)
Backed out changeset 66479dd9eed9 (bug 1156472)
Backed out changeset c8502deeed33 (bug 1156472)
Backed out changeset 1a60ff1149a1 (bug 1156472)
Backed out changeset af1638279785 (bug 1156472)
Backed out changeset 8210276a98ca (bug 1156472)
Backed out changeset 13730e7c5997 (bug 1156472)
Backed out changeset 05acb71cf981 (bug 1156472)
2015-07-24 17:08:37 +02:00
Paul Adenot
e505cb1e39 Bug 1156472 - Part 6 - Connect HTMLMediaElement and AudioContext to the capture stream when capturing is needed. r=roc 2015-07-24 14:28:17 +02:00
Bobby Holley
0d7ca19bc1 Bug 1184634 - Move various includes into the mozilla namespace. r=gerald
I did my a quick best-effort pass to fix up the most egregious ordering
problems. I left some big pre-existing messes alone.
2015-07-16 22:23:18 -07:00
Andrea Marchesini
c8c652d9d4 Bug 1183700 - Don't prevent playback of media elements in a muted tab on desktop, r=ehsan 2015-07-16 19:34:30 +01:00
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Ehsan Akhgari
37a45c793d Bug 1180535 - Dispatch the media-playback notification when navigating away from a page that has a media element playing; r=baku
When navigating away from a document, we mute the playing media elements
through the NotifyOwnerDocumentActivityChanged() notification.
Sometimes, that function may notify the audio channel agent through its
call to AddRemoveSelfReference() which may call
UpdateAudioChannelPlayingState() and notify the agent, but when we're
navigating away from the page, playingThroughTheAudioChannel will always
be equal to mPlayingThroughTheAudioChannel, which causes us to not
notify the audio channel agent.

This patch fixes this by separating NotifyOwnerDocumentActivityChanged()
from its internal consumers, and forcefully notifying the audio channel
agent when we navigate away.
2015-07-11 13:16:39 -04:00
Andrea Marchesini
db97457570 Bug 1113086 - AudioChannel policy in Browser API - patch 1 - BrowserElementAudioChannel, r=ehsan 2015-07-10 17:38:44 +01:00
Carsten "Tomcat" Book
4d84eb2be5 Backed out changeset bcfbdb934c37 (bug 1113086) for breaking cpp tests with timeouts in TestAudioChannelService.exe 2015-07-11 14:14:58 +02:00
Carsten "Tomcat" Book
79edbab44c Backed out changeset e11a8496bf63 (bug 1180535) 2015-07-11 14:13:32 +02:00
Ehsan Akhgari
33472a67ba Bug 1180535 - Dispatch the media-playback notification when navigating away from a page that has a media element playing; r=baku
When navigating away from a document, we mute the playing media elements
through the NotifyOwnerDocumentActivityChanged() notification.
Sometimes, that function may notify the audio channel agent through its
call to AddRemoveSelfReference() which may call
UpdateAudioChannelPlayingState() and notify the agent, but when we're
navigating away from the page, playingThroughTheAudioChannel will always
be equal to mPlayingThroughTheAudioChannel, which causes us to not
notify the audio channel agent.

This patch fixes this by separating NotifyOwnerDocumentActivityChanged()
from its internal consumers, and forcefully notifying the audio channel
agent when we navigate away.
2015-07-10 21:33:00 -04:00
Andrea Marchesini
567d09c01f Bug 1113086 - AudioChannel policy in Browser API - patch 1 - BrowserElementAudioChannel, r=ehsan 2015-07-10 21:08:43 -04:00
Xidorn Quan
a5cfa673a9 Backed out 8 changesets (bug 1113086) for build bustage
Backed out changeset a20839dfd439 (bug 1113086)
Backed out changeset 675ea719b91c (bug 1113086)
Backed out changeset cfb34138bb9f (bug 1113086)
Backed out changeset b9525c60a737 (bug 1113086)
Backed out changeset 380859ae955b (bug 1113086)
Backed out changeset 5ec088f0892f (bug 1113086)
Backed out changeset caf57ae8cbce (bug 1113086)
Backed out changeset 0fc4dec6cd81 (bug 1113086)
2015-07-11 10:55:59 +10:00
Andrea Marchesini
0294bacd27 Bug 1113086 - AudioChannel policy in Browser API - patch 1 - BrowserElementAudioChannel, r=ehsan 2015-07-10 17:38:44 +01:00
Wes Kocher
6b7fd8796a Backed out changeset d7e0eb7b42f9 (bug 1180535) for test_video_wakelock.html permafails CLOSED TREE 2015-07-10 15:36:39 -07:00
Ehsan Akhgari
1859e2fd6b Bug 1180535 - Dispatch the media-playback notification when navigating away from a page that has a media element playing; r=baku
When navigating away from a document, we mute the playing media elements
through the NotifyOwnerDocumentActivityChanged() notification.
Sometimes, that function may notify the audio channel agent through its
call to AddRemoveSelfReference() which may call
UpdateAudioChannelPlayingState() and notify the agent, but when we're
navigating away from the page, playingThroughTheAudioChannel will always
be equal to mPlayingThroughTheAudioChannel, which causes us to not
notify the audio channel agent.

This patch fixes this by separating NotifyOwnerDocumentActivityChanged()
from its internal consumers, and forcefully notifying the audio channel
agent when we navigate away.
2015-07-10 15:49:53 -04:00
Chris Pearce
9ffe106f52 Bug 1180563 - Add pref to delay play of <video>s until they're visible. r=kinetik 2015-07-09 11:10:16 +12:00
Hamzata Diallo
3f804c88be Bug 1178513 - Export libxul symbols needed by ACL. r=mattwoodrow 2015-07-02 15:19:35 -07:00
Ryan VanderMeulen
ef1aa3fee8 Backed out 7 changesets (bug 1113086) for various Gaia test failures.
Backed out changeset eb7e79a2c9e9 (bug 1113086)
Backed out changeset 3562a09b2bf3 (bug 1113086)
Backed out changeset 127cde112795 (bug 1113086)
Backed out changeset 84dc903151c1 (bug 1113086)
Backed out changeset 42dc5dbabdcd (bug 1113086)
Backed out changeset e1ad68356a74 (bug 1113086)
Backed out changeset 86b32f5442f2 (bug 1113086)
2015-06-18 13:00:25 -04:00
Andrea Marchesini
dcd7cc075f Bug 1113086 - AudioChannel policy in Browser API - patch 1 - BrowserElementAudioChannel, r=ehsan 2015-06-18 15:56:58 +01:00
Daosheng Mu
4743d59f12 Bug 987498 - Part 2 - HTMLMediaElement supports playback OverlayImage. r=roc 2015-06-09 23:22:00 +02:00
Brian Birtles
e5f2f91990 Bug 1165203 - Make calls to load() upgrade preload=none to preload=metadata; r=cpearce 2015-06-17 09:02:51 +09:00
Karl Tomlinson
437bf273d4 bug 1116382 use MediaSource from resolution of MediaSource urls when set r=bholley 2015-05-28 14:38:34 +12:00
Karl Tomlinson
f4305531a7 bug 1116382 always ShutdownDecoder() so that MediaSourceDecoder alone can manage MediaSource::Detach() r=bholley 2015-05-28 14:23:27 +12:00
Karl Tomlinson
b6050910ba bug 1116382 resolve MediaSource urls on media element src attributes when set r=bholley 2015-05-26 22:36:04 +12:00
Andrew McCreight
92010d3e4c Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Bobby Holley
dc8cc8f105 Bug 1159558 - Redesign watching to use a manager. r=jww 2015-04-30 12:46:40 -07:00
Bobby Holley
1e4f8d4df5 Bug 1144481 - Use state mirroring for NextFrameStatus. r=jww 2015-04-23 11:55:14 -07:00
Bobby Holley
d08d71b4b5 Bug 1144486 - Use state watching machinery for mReadyState updates. r=jww 2015-04-22 21:38:11 -07:00