| Index: chrome/browser/chrome_content_browser_client.cc
|
| diff --git a/chrome/browser/chrome_content_browser_client.cc b/chrome/browser/chrome_content_browser_client.cc
|
| index 1c7ce3b7eb720ea5a87af2bd1158e39a2da07c23..2cab771dcbe9857263ba97ea71a87b5e9eea2297 100644
|
| --- a/chrome/browser/chrome_content_browser_client.cc
|
| +++ b/chrome/browser/chrome_content_browser_client.cc
|
| @@ -193,6 +193,7 @@
|
| #include "services/service_manager/public/cpp/interface_registry.h"
|
| #include "services/service_manager/public/cpp/service.h"
|
| #include "storage/browser/fileapi/external_mount_points.h"
|
| +#include "third_party/WebKit/public/platform/modules/shapedetection/barcodedetection.mojom.h"
|
| #include "third_party/WebKit/public/platform/modules/webshare/webshare.mojom.h"
|
| #include "ui/base/l10n/l10n_util.h"
|
| #include "ui/base/resource/resource_bundle.h"
|
| @@ -1440,7 +1441,8 @@ bool IsAutoReloadVisibleOnlyEnabled() {
|
| return true;
|
| }
|
|
|
| -#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_WIN)
|
| +#if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_WIN) || \
|
| + defined(OS_ANDROID)
|
| bool AreExperimentalWebPlatformFeaturesEnabled() {
|
| const base::CommandLine& browser_command_line =
|
| *base::CommandLine::ForCurrentProcess();
|
| @@ -3027,6 +3029,19 @@ void ChromeContentBrowserClient::RegisterRenderFrameMojoInterfaces(
|
| }
|
| }
|
| #endif
|
| +
|
| +#if defined(OS_ANDROID)
|
| + if (AreExperimentalWebPlatformFeaturesEnabled()) {
|
| + content::WebContents* web_contents =
|
| + content::WebContents::FromRenderFrameHost(render_frame_host);
|
| + if (web_contents) {
|
| + registry->AddInterface(
|
| + web_contents->GetJavaInterfaces()
|
| + ->CreateInterfaceFactory<blink::mojom::BarcodeDetection>());
|
| + }
|
| + }
|
| +#endif
|
| +
|
| }
|
|
|
| void ChromeContentBrowserClient::ExposeInterfacesToGpuProcess(
|
|
|