Commit a0f0a262 authored by dgozman's avatar dgozman Committed by Commit bot

[DevTools] Implement Page.canEmulate capability.

BUG=none

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

Cr-Commit-Position: refs/heads/master@{#292374}
parent 567bb924
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
#include "content/public/common/content_client.h" #include "content/public/common/content_client.h"
#include "content/public/common/page_transition_types.h" #include "content/public/common/page_transition_types.h"
#include "content/public/common/referrer.h" #include "content/public/common/referrer.h"
#include "content/public/common/url_constants.h"
#include "ipc/ipc_sender.h" #include "ipc/ipc_sender.h"
#include "net/base/net_util.h" #include "net/base/net_util.h"
#include "third_party/WebKit/public/platform/WebCursorInfo.h" #include "third_party/WebKit/public/platform/WebCursorInfo.h"
...@@ -143,6 +144,11 @@ RendererOverridesHandler::RendererOverridesHandler() ...@@ -143,6 +144,11 @@ RendererOverridesHandler::RendererOverridesHandler()
base::Bind( base::Bind(
&RendererOverridesHandler::PageSetTouchEmulationEnabled, &RendererOverridesHandler::PageSetTouchEmulationEnabled,
base::Unretained(this))); base::Unretained(this)));
RegisterCommandHandler(
devtools::Page::canEmulate::kName,
base::Bind(
&RendererOverridesHandler::PageCanEmulate,
base::Unretained(this)));
RegisterCommandHandler( RegisterCommandHandler(
devtools::Page::canScreencast::kName, devtools::Page::canScreencast::kName,
base::Bind( base::Bind(
...@@ -564,6 +570,24 @@ RendererOverridesHandler::PageSetTouchEmulationEnabled( ...@@ -564,6 +570,24 @@ RendererOverridesHandler::PageSetTouchEmulationEnabled(
return NULL; return NULL;
} }
scoped_refptr<DevToolsProtocol::Response>
RendererOverridesHandler::PageCanEmulate(
scoped_refptr<DevToolsProtocol::Command> command) {
base::DictionaryValue* result = new base::DictionaryValue();
#if defined(OS_ANDROID)
result->SetBoolean(devtools::kResult, false);
#else
if (WebContents* web_contents = WebContents::FromRenderViewHost(host_)) {
result->SetBoolean(
devtools::kResult,
!web_contents->GetVisibleURL().SchemeIs(kChromeDevToolsScheme));
} else {
result->SetBoolean(devtools::kResult, true);
}
#endif // defined(OS_ANDROID)
return command->SuccessResponse(result);
}
scoped_refptr<DevToolsProtocol::Response> scoped_refptr<DevToolsProtocol::Response>
RendererOverridesHandler::PageCanScreencast( RendererOverridesHandler::PageCanScreencast(
scoped_refptr<DevToolsProtocol::Command> command) { scoped_refptr<DevToolsProtocol::Command> command) {
......
...@@ -84,6 +84,8 @@ class CONTENT_EXPORT RendererOverridesHandler ...@@ -84,6 +84,8 @@ class CONTENT_EXPORT RendererOverridesHandler
scoped_refptr<DevToolsProtocol::Command> command); scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> PageCaptureScreenshot( scoped_refptr<DevToolsProtocol::Response> PageCaptureScreenshot(
scoped_refptr<DevToolsProtocol::Command> command); scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> PageCanEmulate(
scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> PageCanScreencast( scoped_refptr<DevToolsProtocol::Response> PageCanScreencast(
scoped_refptr<DevToolsProtocol::Command> command); scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> PageStartScreencast( scoped_refptr<DevToolsProtocol::Response> PageStartScreencast(
......
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