Changeset 185179 in webkit
- Timestamp:
- Jun 3, 2015 4:41:52 PM (9 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/CMakeLists.txt
r185126 r185179 10 10 "${WEBCORE_DIR}/Modules/indieui" 11 11 "${WEBCORE_DIR}/Modules/mediacontrols/" 12 "${WEBCORE_DIR}/Modules/mediasession" 12 13 "${WEBCORE_DIR}/Modules/mediasource" 13 14 "${WEBCORE_DIR}/Modules/mediastream" … … 219 220 Modules/mediacontrols/MediaControlsHost.idl 220 221 222 Modules/mediasession/HTMLMediaElementMediaSession.idl 221 223 Modules/mediasession/MediaRemoteControls.idl 222 224 Modules/mediasession/MediaSession.idl … … 875 877 Modules/mediacontrols/MediaControlsHost.cpp 876 878 879 Modules/mediasession/HTMLMediaElementMediaSession.cpp 877 880 Modules/mediasession/MediaRemoteControls.cpp 878 881 Modules/mediasession/MediaSession.cpp -
trunk/Source/WebCore/ChangeLog
r185176 r185179 1 2015-06-03 Matt Rajca <mrajca@apple.com> 2 3 Add basic Media Session support to HTMLMediaElement. 4 https://bugs.webkit.org/show_bug.cgi?id=145581 5 6 Reviewed by Eric Carlson. 7 8 HTMLMediaElements now have: 9 10 - a 'kind' attribute representing the intrinsic media category 11 - a 'session' attribute representing the current media session, if any 12 13 * CMakeLists.txt: Include the new HTMLMediaElementMediaSession sources. 14 * DerivedSources.make: Include the new IDL file. 15 * Modules/mediasession/HTMLMediaElementMediaSession.cpp: Added. 16 (WebCore::HTMLMediaElementMediaSession::session): 17 * Modules/mediasession/HTMLMediaElementMediaSession.h: Added basic translation of the IDL file. 18 (WebCore::HTMLMediaElementMediaSession::kind): 19 (WebCore::HTMLMediaElementMediaSession::setKind): 20 (WebCore::HTMLMediaElementMediaSession::setSession): 21 * Modules/mediasession/HTMLMediaElementMediaSession.idl: Added from the Media Session spec. 22 * PlatformMac.cmake: Include DOMHTMLMediaElementMediaSession.cpp. 23 * WebCore.xcodeproj/project.pbxproj: Include the new HTMLMediaElementMediaSession sources. 24 * html/HTMLMediaElement.h: Added accessors for 'kind' and 'session'. 25 (WebCore::HTMLMediaElement::kind): 26 (WebCore::HTMLMediaElement::setKind): 27 (WebCore::HTMLMediaElement::session): 28 (WebCore::HTMLMediaElement::setSession): 29 1 30 2015-06-03 Myles C. Maxfield <mmaxfield@apple.com> 2 31 -
trunk/Source/WebCore/DerivedSources.make
r185126 r185179 105 105 $(WebCore)/Modules/indieui/UIRequestEvent.idl \ 106 106 $(WebCore)/Modules/mediacontrols/MediaControlsHost.idl \ 107 $(WebCore)/Modules/mediasession/HTMLMediaElementMediaSession.idl \ 107 108 $(WebCore)/Modules/mediasession/MediaRemoteControls.idl \ 108 109 $(WebCore)/Modules/mediasession/MediaSession.idl \ -
trunk/Source/WebCore/PlatformMac.cmake
r184536 r185179 571 571 ${DERIVED_SOURCES_WEBCORE_DIR}/DOMHTMLFormControlsCollection.mm 572 572 ${DERIVED_SOURCES_WEBCORE_DIR}/DOMHTMLMediaElement.mm 573 ${DERIVED_SOURCES_WEBCORE_DIR}/DOMHTMLMediaElementMediaSession.mm 573 574 ${DERIVED_SOURCES_WEBCORE_DIR}/DOMHTMLMediaElementMediaStream.mm 574 575 ${DERIVED_SOURCES_WEBCORE_DIR}/DOMHTMLTrackElement.mm -
trunk/Source/WebCore/WebCore.vcxproj/WebCoreIncludeCommon.props
r180979 r185179 6 6 <ItemDefinitionGroup> 7 7 <ClCompile> 8 <AdditionalIncludeDirectories>$(ProjectDir)..;$(ProjectDir)..\Modules\mediacontrols;$(ProjectDir)..\Modules\medias tream;$(ProjectDir)..\Modules\encryptedmedia;$(ProjectDir)..\Modules\filesystem;$(ProjectDir)..\Modules\gamepad;$(ProjectDir)..\Modules\geolocation;$(ProjectDir)..\Modules\indexeddb;$(ProjectDir)..\Modules\mediasource;$(ProjectDir)..\Modules\navigatorcontentutils;$(ProjectDir)..\Modules\plugins;$(ProjectDir)..\Modules\speech;$(ProjectDir)..\Modules\proximity;$(ProjectDir)..\Modules\quota;$(ProjectDir)..\Modules\notifications;$(ProjectDir)..\Modules\streams;$(ProjectDir)..\Modules\webdatabase;$(ProjectDir)..\Modules\websockets;$(ProjectDir)..\accessibility;$(ProjectDir)..\accessibility\win;$(ProjectDir)..\bridge;$(ProjectDir)..\bridge\c;$(ProjectDir)..\bridge\jsc;$(ProjectDir)..\css;$(ProjectDir)..\cssjit;$(ProjectDir)..\contentextensions;$(ProjectDir)..\editing;$(ProjectDir)..\fileapi;$(ProjectDir)..\rendering;$(ProjectDir)..\rendering\line;$(ProjectDir)..\rendering\mathml;$(ProjectDir)..\rendering\shapes;$(ProjectDir)..\rendering\style;$(ProjectDir)..\rendering\svg;$(ProjectDir)..\bindings;$(ProjectDir)..\bindings\generic;$(ProjectDir)..\bindings\js;$(ProjectDir)..\bindings\js\specialization;$(ProjectDir)..\dom;$(ProjectDir)..\dom\default;$(ProjectDir)..\history;$(ProjectDir)..\html;$(ProjectDir)..\html\canvas;$(ProjectDir)..\html\forms;$(ProjectDir)..\html\parser;$(ProjectDir)..\html\shadow;$(ProjectDir)..\html\track;$(ProjectDir)..\inspector;$(ProjectDir)..\loader;$(ProjectDir)..\loader\appcache;$(ProjectDir)..\loader\archive;$(ProjectDir)..\loader\archive\cf;$(ProjectDir)..\loader\cache;$(ProjectDir)..\loader\icon;$(ProjectDir)..\mathml;$(ProjectDir)..\page;$(ProjectDir)..\page\animation;$(ProjectDir)..\page\scrolling;$(ProjectDir)..\page\win;$(ProjectDir)..\platform;$(ProjectDir)..\platform\animation;$(ProjectDir)..\platform\audio;$(ProjectDir)..\platform\mock;$(ProjectDir)..\platform\sql;$(ProjectDir)..\platform\win;$(ProjectDir)..\platform\network;$(ProjectDir)..\platform\network\win;$(ProjectDir)..\platform\cf;$(ProjectDir)..\platform\graphics;$(ProjectDir)..\platform\graphics\ca;$(ProjectDir)..\platform\graphics\cpu\arm\filters;$(ProjectDir)..\platform\graphics\filters;$(ProjectDir)..\platform\graphics\filters\arm;$(ProjectDir)..\platform\graphics\opentype;$(ProjectDir)..\platform\graphics\transforms;$(ProjectDir)..\platform\text;$(ProjectDir)..\platform\text\icu;$(ProjectDir)..\platform\text\transcoder;$(ProjectDir)..\platform\graphics\win;$(ProjectDir)..\xml;$(ProjectDir)..\xml\parser;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\WebCore\DerivedSources;$(ProjectDir)..\plugins;$(ProjectDir)..\plugins\win;$(ProjectDir)..\replay;$(ProjectDir)..\svg\animation;$(ProjectDir)..\svg\graphics;$(ProjectDir)..\svg\properties;$(ProjectDir)..\svg\graphics\filters;$(ProjectDir)..\svg;$(ProjectDir)..\testing;$(ProjectDir)..\crypto;$(ProjectDir)..\crypto\keys;$(ProjectDir)..\wml;$(ProjectDir)..\storage;$(ProjectDir)..\style;$(ProjectDir)..\websockets;$(ProjectDir)..\workers;$(ConfigurationBuildDir)\include;$(ConfigurationBuildDir)\include\private;$(ConfigurationBuildDir)\include\JavaScriptCore;$(ConfigurationBuildDir)\include\private\JavaScriptCore;$(ProjectDir)..\ForwardingHeaders;$(ProjectDir)..\platform\graphics\gpu;$(ProjectDir)..\platform\graphics\egl;$(ProjectDir)..\platform\graphics\surfaces;$(ProjectDir)..\platform\graphics\surfaces\egl;$(ProjectDir)..\platform\graphics\opengl;$(WebKit_Libraries)\include;$(WebKit_Libraries)\include\private;$(WebKit_Libraries)\include\private\JavaScriptCore;$(WebKit_Libraries)\include\sqlite;$(WebKit_Libraries)\include\JavaScriptCore;$(WebKit_Libraries)\include\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>8 <AdditionalIncludeDirectories>$(ProjectDir)..;$(ProjectDir)..\Modules\mediacontrols;$(ProjectDir)..\Modules\mediasession;$(ProjectDir)..\Modules\mediastream;$(ProjectDir)..\Modules\encryptedmedia;$(ProjectDir)..\Modules\filesystem;$(ProjectDir)..\Modules\gamepad;$(ProjectDir)..\Modules\geolocation;$(ProjectDir)..\Modules\indexeddb;$(ProjectDir)..\Modules\mediasource;$(ProjectDir)..\Modules\navigatorcontentutils;$(ProjectDir)..\Modules\plugins;$(ProjectDir)..\Modules\speech;$(ProjectDir)..\Modules\proximity;$(ProjectDir)..\Modules\quota;$(ProjectDir)..\Modules\notifications;$(ProjectDir)..\Modules\streams;$(ProjectDir)..\Modules\webdatabase;$(ProjectDir)..\Modules\websockets;$(ProjectDir)..\accessibility;$(ProjectDir)..\accessibility\win;$(ProjectDir)..\bridge;$(ProjectDir)..\bridge\c;$(ProjectDir)..\bridge\jsc;$(ProjectDir)..\css;$(ProjectDir)..\cssjit;$(ProjectDir)..\contentextensions;$(ProjectDir)..\editing;$(ProjectDir)..\fileapi;$(ProjectDir)..\rendering;$(ProjectDir)..\rendering\line;$(ProjectDir)..\rendering\mathml;$(ProjectDir)..\rendering\shapes;$(ProjectDir)..\rendering\style;$(ProjectDir)..\rendering\svg;$(ProjectDir)..\bindings;$(ProjectDir)..\bindings\generic;$(ProjectDir)..\bindings\js;$(ProjectDir)..\bindings\js\specialization;$(ProjectDir)..\dom;$(ProjectDir)..\dom\default;$(ProjectDir)..\history;$(ProjectDir)..\html;$(ProjectDir)..\html\canvas;$(ProjectDir)..\html\forms;$(ProjectDir)..\html\parser;$(ProjectDir)..\html\shadow;$(ProjectDir)..\html\track;$(ProjectDir)..\inspector;$(ProjectDir)..\loader;$(ProjectDir)..\loader\appcache;$(ProjectDir)..\loader\archive;$(ProjectDir)..\loader\archive\cf;$(ProjectDir)..\loader\cache;$(ProjectDir)..\loader\icon;$(ProjectDir)..\mathml;$(ProjectDir)..\page;$(ProjectDir)..\page\animation;$(ProjectDir)..\page\scrolling;$(ProjectDir)..\page\win;$(ProjectDir)..\platform;$(ProjectDir)..\platform\animation;$(ProjectDir)..\platform\audio;$(ProjectDir)..\platform\mock;$(ProjectDir)..\platform\sql;$(ProjectDir)..\platform\win;$(ProjectDir)..\platform\network;$(ProjectDir)..\platform\network\win;$(ProjectDir)..\platform\cf;$(ProjectDir)..\platform\graphics;$(ProjectDir)..\platform\graphics\ca;$(ProjectDir)..\platform\graphics\cpu\arm\filters;$(ProjectDir)..\platform\graphics\filters;$(ProjectDir)..\platform\graphics\filters\arm;$(ProjectDir)..\platform\graphics\opentype;$(ProjectDir)..\platform\graphics\transforms;$(ProjectDir)..\platform\text;$(ProjectDir)..\platform\text\icu;$(ProjectDir)..\platform\text\transcoder;$(ProjectDir)..\platform\graphics\win;$(ProjectDir)..\xml;$(ProjectDir)..\xml\parser;$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\WebCore\DerivedSources;$(ProjectDir)..\plugins;$(ProjectDir)..\plugins\win;$(ProjectDir)..\replay;$(ProjectDir)..\svg\animation;$(ProjectDir)..\svg\graphics;$(ProjectDir)..\svg\properties;$(ProjectDir)..\svg\graphics\filters;$(ProjectDir)..\svg;$(ProjectDir)..\testing;$(ProjectDir)..\crypto;$(ProjectDir)..\crypto\keys;$(ProjectDir)..\wml;$(ProjectDir)..\storage;$(ProjectDir)..\style;$(ProjectDir)..\websockets;$(ProjectDir)..\workers;$(ConfigurationBuildDir)\include;$(ConfigurationBuildDir)\include\private;$(ConfigurationBuildDir)\include\JavaScriptCore;$(ConfigurationBuildDir)\include\private\JavaScriptCore;$(ProjectDir)..\ForwardingHeaders;$(ProjectDir)..\platform\graphics\gpu;$(ProjectDir)..\platform\graphics\egl;$(ProjectDir)..\platform\graphics\surfaces;$(ProjectDir)..\platform\graphics\surfaces\egl;$(ProjectDir)..\platform\graphics\opengl;$(WebKit_Libraries)\include;$(WebKit_Libraries)\include\private;$(WebKit_Libraries)\include\private\JavaScriptCore;$(WebKit_Libraries)\include\sqlite;$(WebKit_Libraries)\include\JavaScriptCore;$(WebKit_Libraries)\include\zlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> 9 9 </ClCompile> 10 10 </ItemDefinitionGroup> -
trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj
r185126 r185179 5696 5696 C90843CF1B18E47D00B68564 /* MediaRemoteControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C90843CD1B18E47D00B68564 /* MediaRemoteControls.cpp */; }; 5697 5697 C90843D01B18E47D00B68564 /* MediaRemoteControls.h in Headers */ = {isa = PBXBuildFile; fileRef = C90843CE1B18E47D00B68564 /* MediaRemoteControls.h */; }; 5698 C937FE8D1B1F6821008ECC5D /* HTMLMediaElementMediaSession.h in Headers */ = {isa = PBXBuildFile; fileRef = C968B2E61B1E72F700EF1F81 /* HTMLMediaElementMediaSession.h */; }; 5699 C968B2E81B1E778100EF1F81 /* HTMLMediaElementMediaSession.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C968B2E71B1E778100EF1F81 /* HTMLMediaElementMediaSession.cpp */; }; 5698 5700 C9DADBCB1B1D3B97001F17D8 /* JSMediaSession.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C9DADBC91B1D3B25001F17D8 /* JSMediaSession.cpp */; }; 5699 5701 CA3BF67C10D99BAE00E6CE53 /* ScrollAnimator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CA3BF67B10D99BAE00E6CE53 /* ScrollAnimator.cpp */; }; … … 13262 13264 C90843CE1B18E47D00B68564 /* MediaRemoteControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaRemoteControls.h; sourceTree = "<group>"; }; 13263 13265 C93458BB1B18D77E0088EE12 /* MediaRemoteControls.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = MediaRemoteControls.idl; sourceTree = "<group>"; }; 13266 C968B2E51B1E704500EF1F81 /* HTMLMediaElementMediaSession.idl */ = {isa = PBXFileReference; lastKnownFileType = text; path = HTMLMediaElementMediaSession.idl; sourceTree = "<group>"; }; 13267 C968B2E61B1E72F700EF1F81 /* HTMLMediaElementMediaSession.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = HTMLMediaElementMediaSession.h; sourceTree = "<group>"; }; 13268 C968B2E71B1E778100EF1F81 /* HTMLMediaElementMediaSession.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTMLMediaElementMediaSession.cpp; sourceTree = "<group>"; }; 13264 13269 C9DADBC91B1D3B25001F17D8 /* JSMediaSession.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSMediaSession.cpp; sourceTree = "<group>"; }; 13265 13270 C9DADBCA1B1D3B25001F17D8 /* JSMediaSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSMediaSession.h; sourceTree = "<group>"; }; … … 14607 14612 isa = PBXGroup; 14608 14613 children = ( 14614 C968B2E71B1E778100EF1F81 /* HTMLMediaElementMediaSession.cpp */, 14615 C968B2E61B1E72F700EF1F81 /* HTMLMediaElementMediaSession.h */, 14616 C968B2E51B1E704500EF1F81 /* HTMLMediaElementMediaSession.idl */, 14609 14617 C90843CD1B18E47D00B68564 /* MediaRemoteControls.cpp */, 14610 14618 C90843CE1B18E47D00B68564 /* MediaRemoteControls.h */, … … 24937 24945 E44613A50CD6331000FADA75 /* HTMLMediaElement.h in Headers */, 24938 24946 CD5209E61B0BD9E10077184E /* HTMLMediaElementEnums.h in Headers */, 24947 C937FE8D1B1F6821008ECC5D /* HTMLMediaElementMediaSession.h in Headers */, 24939 24948 0779BF0E18453168000B6AE7 /* HTMLMediaElementMediaStream.h in Headers */, 24940 24949 A8EA79F40A1916DF00A8EF5F /* HTMLMenuElement.h in Headers */, … … 28450 28459 A8EA7CAC0A192B9C00A8EF5F /* HTMLMarqueeElement.cpp in Sources */, 28451 28460 E44613A40CD6331000FADA75 /* HTMLMediaElement.cpp in Sources */, 28461 C968B2E81B1E778100EF1F81 /* HTMLMediaElementMediaSession.cpp in Sources */, 28452 28462 0779BF0D18453168000B6AE7 /* HTMLMediaElementMediaStream.cpp in Sources */, 28453 28463 A8EA79F80A1916DF00A8EF5F /* HTMLMenuElement.cpp in Sources */, -
trunk/Source/WebCore/html/HTMLMediaElement.cpp
r185120 r185179 115 115 #endif 116 116 117 #if ENABLE(MEDIA_SESSION) 118 #include "MediaSession.h" 119 #endif 120 117 121 #if ENABLE(MEDIA_SOURCE) 118 122 #include "DOMWindow.h" … … 6355 6359 } 6356 6360 6357 } 6358 6359 #endif 6361 #if ENABLE(MEDIA_SESSION) 6362 6363 MediaSession* HTMLMediaElement::session() const 6364 { 6365 return m_session.get(); 6366 } 6367 6368 void HTMLMediaElement::setSession(MediaSession* session) 6369 { 6370 m_session = session; 6371 } 6372 6373 #endif 6374 6375 } 6376 6377 #endif -
trunk/Source/WebCore/html/HTMLMediaElement.h
r185006 r185179 73 73 class MediaKeys; 74 74 #endif 75 #if ENABLE(MEDIA_SESSION) 76 class MediaSession; 77 #endif 75 78 #if ENABLE(MEDIA_SOURCE) 76 79 class MediaSource; … … 412 415 void mediaLoadingFailedFatally(MediaPlayerEnums::NetworkState); 413 416 417 #if ENABLE(MEDIA_SESSION) 418 const String& kind() const { return m_kind; } 419 void setKind(const String& kind) { m_kind = kind; } 420 421 MediaSession* session() const; 422 void setSession(MediaSession*); 423 #endif 424 414 425 #if ENABLE(MEDIA_SOURCE) 415 426 RefPtr<VideoPlaybackQuality> getVideoPlaybackQuality(); … … 790 801 int m_processingMediaPlayerCallback; 791 802 803 #if ENABLE(MEDIA_SESSION) 804 String m_kind; 805 RefPtr<MediaSession> m_session; 806 #endif 807 792 808 #if ENABLE(MEDIA_SOURCE) 793 809 RefPtr<MediaSource> m_mediaSource;
Note: See TracChangeset
for help on using the changeset viewer.