Commit 6ecb238a authored by alokp's avatar alokp Committed by Commit bot

Let content embedders register in-process media service.

This change makes the registration of in-process media service consistent with that of out-of-process service.

BUG=571155

Review URL: https://codereview.chromium.org/1544853003

Cr-Commit-Position: refs/heads/master@{#371662}
parent 86d53e7b
......@@ -154,6 +154,7 @@ include_rules = [
"+media/audio", # For media audio hang monitor.
"+media/base", # For media switches
"+media/midi", # For midi switches
"+media/mojo", # For mojo media services.
"+mojo/shell/public/cpp",
"+mojo/converters",
"+mojo/runner/child",
......
......@@ -295,6 +295,10 @@
#include "chrome/browser/chrome_browser_main_extra_parts_exo.h"
#endif
#if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
#include "media/mojo/services/mojo_media_application.h"
#endif
using base::FileDescriptor;
using blink::WebWindowFeatures;
using content::AccessTokenStore;
......@@ -2711,6 +2715,14 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoServices(
#endif // !defined(OS_ANDROID) && !defined(OS_IOS)
}
void ChromeContentBrowserClient::RegisterInProcessMojoApplications(
StaticMojoApplicationMap* apps) {
#if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
apps->insert(std::make_pair(
GURL("mojo:media"), base::Bind(&media::MojoMediaApplication::CreateApp)));
#endif
}
void ChromeContentBrowserClient::RegisterOutOfProcessMojoApplications(
OutOfProcessMojoApplicationMap* apps) {
#if defined(ENABLE_MOJO_MEDIA_IN_UTILITY_PROCESS)
......
......@@ -288,6 +288,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient {
void RegisterRenderFrameMojoServices(
content::ServiceRegistry* registry,
content::RenderFrameHost* render_frame_host) override;
void RegisterInProcessMojoApplications(
StaticMojoApplicationMap* apps) override;
void RegisterOutOfProcessMojoApplications(
OutOfProcessMojoApplicationMap* apps) override;
void OpenURL(content::BrowserContext* browser_context,
......
......@@ -30,11 +30,6 @@
#include "mojo/shell/public/cpp/application_delegate.h"
#include "mojo/shell/static_application_loader.h"
#if defined(ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS) || \
defined(ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
#include "media/mojo/services/mojo_media_application.h"
#endif
namespace content {
namespace {
......@@ -251,13 +246,7 @@ MojoShellContext::MojoShellContext() {
app.first);
}
#if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
application_manager_->SetLoaderForURL(
scoped_ptr<mojo::shell::ApplicationLoader>(
new mojo::shell::StaticApplicationLoader(
base::Bind(&media::MojoMediaApplication::CreateApp))),
GURL("mojo:media"));
#elif(ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
#if (ENABLE_MOJO_MEDIA_IN_GPU_PROCESS)
application_manager_->SetLoaderForURL(
scoped_ptr<mojo::shell::ApplicationLoader>(new GpuProcessLoader()),
GURL("mojo:media"));
......
......@@ -218,6 +218,14 @@ bool ShellContentBrowserClient::IsNPAPIEnabled() {
#endif
}
void ShellContentBrowserClient::RegisterInProcessMojoApplications(
StaticMojoApplicationMap* apps) {
#if (ENABLE_MOJO_MEDIA_IN_BROWSER_PROCESS)
apps->insert(std::make_pair(
GURL("mojo:media"), base::Bind(&media::MojoMediaApplication::CreateApp)));
#endif
}
void ShellContentBrowserClient::RegisterOutOfProcessMojoApplications(
OutOfProcessMojoApplicationMap* apps) {
apps->insert(std::make_pair(GURL(kTestMojoAppUrl),
......
......@@ -47,6 +47,8 @@ class ShellContentBrowserClient : public ContentBrowserClient {
URLRequestInterceptorScopedVector request_interceptors) override;
bool IsHandledURL(const GURL& url) override;
bool IsNPAPIEnabled() override;
void RegisterInProcessMojoApplications(
StaticMojoApplicationMap* apps) override;
void RegisterOutOfProcessMojoApplications(
OutOfProcessMojoApplicationMap* apps) override;
void AppendExtraCommandLineSwitches(base::CommandLine* command_line,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment