We should move MediaSession API implementation out of Android-only code, and use mojo instead of IPC.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fb032b1e3fec6f34883a1f432ff38cebb6875045 commit fb032b1e3fec6f34883a1f432ff38cebb6875045 Author: zqzhang <zqzhang@chromium.org> Date: Thu Oct 06 09:23:17 2016 Mojo C++ bindings: make String16 and gfx::Size available in Blink This CL adds C++ bindings for String16 and Size in Blink, which will be used in a follow-up CL (https://codereview.chromium.org/2367393002/). BUG= 624136 , 649630 Review-Url: https://codereview.chromium.org/2379993003 Cr-Commit-Position: refs/heads/master@{#423487} [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/common/common_custom_types.mojom [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/common/common_custom_types_struct_traits.cc [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/common/common_custom_types_struct_traits.h [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/common/common_custom_types_unittest.cc [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/common/test_common_custom_types.mojom [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/mojo/public/cpp/bindings/array_traits_carray.h [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/BUILD.gn [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/CommonCustomTypes.typemap [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/CommonCustomTypesStructTraits.cpp [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/CommonCustomTypesStructTraits.h [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/CommonCustomTypesStructTraitsTest.cpp [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/DEPS [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/Geometry.typemap [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/GeometryStructTraits.cpp [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/GeometryStructTraits.h [add] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/GeometryStructTraitsTest.cpp [modify] https://crrev.com/fb032b1e3fec6f34883a1f432ff38cebb6875045/third_party/WebKit/Source/platform/mojo/blink_typemaps.gni
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/93b95f8bff18d5c4389abd88ca0a33426d738d10 commit 93b95f8bff18d5c4389abd88ca0a33426d738d10 Author: zqzhang <zqzhang@chromium.org> Date: Thu Oct 06 16:14:26 2016 This CL migrates MediaSession message from IPC to mojo. Currently MediaSession message is still Android-only, but it will be available to Desktop in a follow-up CL. BUG= 649630 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2367393002 Cr-Commit-Position: refs/heads/master@{#423554} [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/DEPS [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/frame_host/render_frame_host_impl.cc [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/browser_media_session_manager.cc [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/browser_media_session_manager.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/browser_media_session_manager_browsertest.cc [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/media_session_service_impl.cc [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/media_session_service_impl.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/media_web_contents_observer_android.cc [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/browser/media/android/media_web_contents_observer_android.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/DEPS [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/content_message_generator.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/media/OWNERS [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/media/media_session.typemap [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/common/media/media_session_messages_android.h [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/media/media_session_struct_traits.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/common/typemaps.gni [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/renderer/BUILD.gn [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/renderer/media/android/renderer_media_session_manager.cc [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/renderer/media/android/renderer_media_session_manager.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/renderer/media/android/webmediasession_android.cc [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/renderer/media/android/webmediasession_android.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/content/renderer/media/android/webmediasession_android_unittest.cc [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/renderer/render_frame_impl.cc [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/renderer/render_frame_impl.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/content/test/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/ipc/ipc_message_start.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/LayoutTests/media/mediasession/htmlmediaelement-set-session-expected.txt [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/LayoutTests/media/mediasession/htmlmediaelement-set-session.html [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/LayoutTests/virtual/mediasession/media/mediasession/htmlmediaelement-set-session-expected.txt [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/LayoutTests/virtual/mediasession/media/mediasession/mediasession-constructor-expected.txt [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/core/loader/EmptyClients.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/core/loader/EmptyClients.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/core/loader/FrameLoaderClient.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/DEPS [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaArtwork.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaArtwork.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaMetadata.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaMetadata.h [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaMetadataSanitizer.cpp [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaMetadataSanitizer.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaSession.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaSession.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/MediaSession.idl [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/Source/modules/mediasession/MediaSessionError.cpp [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/Source/modules/mediasession/MediaSessionError.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/Source/modules/mediasession/MediaSessionTest.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/modules/mediasession/OWNERS [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/web/FrameLoaderClientImpl.cpp [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/Source/web/FrameLoaderClientImpl.h [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/public/BUILD.gn [modify] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/public/platform/modules/mediasession/OWNERS [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/public/platform/modules/mediasession/WebMediaArtwork.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/public/platform/modules/mediasession/WebMediaMetadata.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/public/platform/modules/mediasession/WebMediaSession.h [delete] https://crrev.com/d984d26caeefead1e3268d562955d6e560fbcd39/third_party/WebKit/public/platform/modules/mediasession/WebMediaSessionError.h [add] https://crrev.com/93b95f8bff18d5c4389abd88ca0a33426d738d10/third_party/WebKit/public/platform/modules/mediasession/media_session.mojom
Finally! \o/
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d84e7287c869e3b40177a3c39aef6ad11b0092d6 commit d84e7287c869e3b40177a3c39aef6ad11b0092d6 Author: zqzhang <zqzhang@chromium.org> Date: Fri Oct 07 19:22:03 2016 Make MediaSession available on Desktop This CL moves BrowserMediaSessionManager, MediaSessionServiceImpl and MediaMetadataSanitizer to content/browser/media/session thus make the MediaSession API available on Desktop. BUG= 649630 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Review-Url: https://codereview.chromium.org/2399023002 Cr-Commit-Position: refs/heads/master@{#423927} [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/BUILD.gn [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/frame_host/render_frame_host_impl.cc [delete] https://crrev.com/256093e6ead7db6f7269d8af50a82906891f0caf/content/browser/media/android/browser_media_session_manager.cc [delete] https://crrev.com/256093e6ead7db6f7269d8af50a82906891f0caf/content/browser/media/android/browser_media_session_manager.h [delete] https://crrev.com/256093e6ead7db6f7269d8af50a82906891f0caf/content/browser/media/android/browser_media_session_manager_browsertest.cc [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/android/media_web_contents_observer_android.cc [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/android/media_web_contents_observer_android.h [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/media_web_contents_observer.h [rename] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/session/media_metadata_sanitizer.cc [rename] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/session/media_metadata_sanitizer.h [rename] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/session/media_session_service_impl.cc [rename] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/browser/media/session/media_session_service_impl.h [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/common/BUILD.gn [modify] https://crrev.com/d84e7287c869e3b40177a3c39aef6ad11b0092d6/content/test/BUILD.gn
[Automated comment] removing mislabelled merge-merged-2840
Comment 1 by bugdroid1@chromium.org
, Oct 6 2016