summaryrefslogtreecommitdiff
path: root/chromium/content/browser/devtools
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/content/browser/devtools')
-rw-r--r--chromium/content/browser/devtools/devtools_protocol.cc5
-rw-r--r--chromium/content/browser/devtools/devtools_protocol.h2
-rw-r--r--chromium/content/browser/devtools/devtools_protocol_constants.cc28
-rw-r--r--chromium/content/browser/devtools/devtools_protocol_constants.h25
-rw-r--r--chromium/content/browser/devtools/render_view_devtools_agent_host.cc7
-rw-r--r--chromium/content/browser/devtools/render_view_devtools_agent_host.h1
-rw-r--r--chromium/content/browser/devtools/renderer_overrides_handler.cc131
-rw-r--r--chromium/content/browser/devtools/renderer_overrides_handler.h7
8 files changed, 33 insertions, 173 deletions
diff --git a/chromium/content/browser/devtools/devtools_protocol.cc b/chromium/content/browser/devtools/devtools_protocol.cc
index 948ed6be8a4..83980846556 100644
--- a/chromium/content/browser/devtools/devtools_protocol.cc
+++ b/chromium/content/browser/devtools/devtools_protocol.cc
@@ -190,11 +190,6 @@ void DevToolsProtocol::Handler::SendNotification(
SendRawMessage(notification->Serialize());
}
-void DevToolsProtocol::Handler::SendAsyncResponse(
- scoped_refptr<DevToolsProtocol::Response> response) {
- SendRawMessage(response->Serialize());
-}
-
void DevToolsProtocol::Handler::SendRawMessage(const std::string& message) {
if (!notifier_.is_null())
notifier_.Run(message);
diff --git a/chromium/content/browser/devtools/devtools_protocol.h b/chromium/content/browser/devtools/devtools_protocol.h
index 2f7ce0bfecb..0012947382c 100644
--- a/chromium/content/browser/devtools/devtools_protocol.h
+++ b/chromium/content/browser/devtools/devtools_protocol.h
@@ -141,8 +141,6 @@ class DevToolsProtocol {
void SendNotification(const std::string& method,
base::DictionaryValue* params);
- void SendAsyncResponse(scoped_refptr<DevToolsProtocol::Response> response);
-
// Sends message to client, the caller is presumed to properly
// format the message.
void SendRawMessage(const std::string& message);
diff --git a/chromium/content/browser/devtools/devtools_protocol_constants.cc b/chromium/content/browser/devtools/devtools_protocol_constants.cc
index 7fbec4b665b..c689ea1b7cb 100644
--- a/chromium/content/browser/devtools/devtools_protocol_constants.cc
+++ b/chromium/content/browser/devtools/devtools_protocol_constants.cc
@@ -8,40 +8,32 @@ namespace content {
namespace devtools {
namespace Inspector {
-
namespace detached {
const char kName[] = "Inspector.detached";
const char kParamReason[] = "reason";
} // detached
-
namespace targetCrashed {
const char kName[] = "Inspector.targetCrashed";
} // targetCrashed
-
} // Inspector
namespace DOM {
-
namespace setFileInputFiles {
const char kName[] = "DOM.setFileInputFiles";
const char kParamFiles[] = "files";
} // setFileInputFiles
-
} // DOM
namespace Page {
-
namespace handleJavaScriptDialog {
const char kName[] = "Page.handleJavaScriptDialog";
const char kParamAccept[] = "accept";
const char kParamPromptText[] = "promptText";
} // handleJavaScriptDialog
-
namespace navigate {
const char kName[] = "Page.navigate";
const char kParamUrl[] = "url";
} // navigate
-
namespace captureScreenshot {
const char kName[] = "Page.captureScreenshot";
const char kParamFormat[] = "format";
@@ -49,31 +41,12 @@ namespace captureScreenshot {
const char kParamScale[] = "scale";
const char kResponseData[] = "data";
} // captureScreenshot
-
-namespace startScreencast {
- const char kName[] = "Page.startScreencast";
- const char kParamFormat[] = "format";
- const char kParamQuality[] = "quality";
- const char kParamScale[] = "scale";
-} // startScreencast
-
-namespace stopScreencast {
- const char kName[] = "Page.stopScreencast";
-} // stopScreencast
-
-namespace screencastFrame {
- const char kName[] = "Page.screencastFrame";
- const char kResponseData[] = "data";
-} // screencastFrame
-
} // Page
namespace Worker {
-
namespace disconnectedFromWorker {
const char kName[] = "Worker.disconnectedFromWorker";
} // disconnectedFromWorker
-
} // Worker
namespace Tracing {
@@ -97,7 +70,6 @@ namespace dataCollected {
const char kName[] = "Tracing.dataCollected";
const char kValue[] = "value";
}
-
} // Tracing
} // devtools
diff --git a/chromium/content/browser/devtools/devtools_protocol_constants.h b/chromium/content/browser/devtools/devtools_protocol_constants.h
index fdf182a3dbb..a05493318e1 100644
--- a/chromium/content/browser/devtools/devtools_protocol_constants.h
+++ b/chromium/content/browser/devtools/devtools_protocol_constants.h
@@ -15,16 +15,13 @@ namespace content {
namespace devtools {
namespace Inspector {
-
namespace detached {
extern const char kName[];
extern const char kParamReason[];
} // detached
-
namespace targetCrashed {
extern const char kName[];
} // targetCrashed
-
} // Inspector
namespace DOM {
@@ -35,18 +32,15 @@ namespace setFileInputFiles {
} // DOM
namespace Page {
-
namespace handleJavaScriptDialog {
extern const char kName[];
extern const char kParamAccept[];
extern const char kParamPromptText[];
} // handleJavaScriptDialog
-
namespace navigate {
extern const char kName[];
extern const char kParamUrl[];
} // navigate
-
namespace captureScreenshot {
extern const char kName[];
extern const char kParamFormat[];
@@ -54,23 +48,6 @@ namespace captureScreenshot {
extern const char kParamScale[];
extern const char kResponseData[];
} // captureScreenshot
-
-namespace startScreencast {
- extern const char kName[];
- extern const char kParamFormat[];
- extern const char kParamQuality[];
- extern const char kParamScale[];
-} // startScreencast
-
-namespace stopScreencast {
- extern const char kName[];
-} // stopScreencast
-
-namespace screencastFrame {
- extern const char kName[];
- extern const char kResponseData[];
-} // screencastFrame
-
} // Page
namespace Tracing {
@@ -98,11 +75,9 @@ namespace dataCollected {
namespace Worker {
-
namespace disconnectedFromWorker {
extern const char kName[];
} // disconnectedFromWorker
-
} // Worker
} // devtools
diff --git a/chromium/content/browser/devtools/render_view_devtools_agent_host.cc b/chromium/content/browser/devtools/render_view_devtools_agent_host.cc
index 99686a00079..7455c160d8e 100644
--- a/chromium/content/browser/devtools/render_view_devtools_agent_host.cc
+++ b/chromium/content/browser/devtools/render_view_devtools_agent_host.cc
@@ -17,7 +17,6 @@
#include "content/browser/site_instance_impl.h"
#include "content/browser/web_contents/web_contents_impl.h"
#include "content/common/devtools_messages.h"
-#include "content/common/view_messages.h"
#include "content/public/browser/content_browser_client.h"
#include "content/public/browser/notification_service.h"
#include "content/public/browser/notification_types.h"
@@ -312,17 +311,11 @@ bool RenderViewDevToolsAgentHost::OnRvhMessageReceived(
IPC_MESSAGE_HANDLER(DevToolsHostMsg_ClearBrowserCache, OnClearBrowserCache)
IPC_MESSAGE_HANDLER(DevToolsHostMsg_ClearBrowserCookies,
OnClearBrowserCookies)
- IPC_MESSAGE_HANDLER_GENERIC(ViewHostMsg_SwapCompositorFrame,
- handled = false; OnSwapCompositorFrame())
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
return handled;
}
-void RenderViewDevToolsAgentHost::OnSwapCompositorFrame() {
- overrides_handler_->OnSwapCompositorFrame();
-}
-
void RenderViewDevToolsAgentHost::OnSaveAgentRuntimeState(
const std::string& state) {
if (!render_view_host_)
diff --git a/chromium/content/browser/devtools/render_view_devtools_agent_host.h b/chromium/content/browser/devtools/render_view_devtools_agent_host.h
index 89855441146..00f73a6b2a0 100644
--- a/chromium/content/browser/devtools/render_view_devtools_agent_host.h
+++ b/chromium/content/browser/devtools/render_view_devtools_agent_host.h
@@ -59,7 +59,6 @@ class CONTENT_EXPORT RenderViewDevToolsAgentHost
void RenderViewHostDestroyed(RenderViewHost* rvh);
void RenderViewCrashed();
bool OnRvhMessageReceived(const IPC::Message& message);
- void OnSwapCompositorFrame();
void OnDispatchOnInspectorFrontend(const std::string& message);
void OnSaveAgentRuntimeState(const std::string& state);
diff --git a/chromium/content/browser/devtools/renderer_overrides_handler.cc b/chromium/content/browser/devtools/renderer_overrides_handler.cc
index f5d6c1cd546..57266676e87 100644
--- a/chromium/content/browser/devtools/renderer_overrides_handler.cc
+++ b/chromium/content/browser/devtools/renderer_overrides_handler.cc
@@ -34,7 +34,7 @@
#include "ui/snapshot/snapshot.h"
#include "url/gurl.h"
-namespace content {
+using base::TimeTicks;
namespace {
@@ -42,31 +42,10 @@ static const char kPng[] = "png";
static const char kJpeg[] = "jpeg";
static int kDefaultScreenshotQuality = 80;
-void ParseCaptureParameters(DevToolsProtocol::Command* command,
- std::string* format,
- int* quality,
- double* scale) {
- *quality = kDefaultScreenshotQuality;
- *scale = 1;
- base::DictionaryValue* params = command->params();
- if (params) {
- params->GetString(devtools::Page::captureScreenshot::kParamFormat,
- format);
- params->GetInteger(devtools::Page::captureScreenshot::kParamQuality,
- quality);
- params->GetDouble(devtools::Page::captureScreenshot::kParamScale,
- scale);
- }
- if (format->empty())
- *format = kPng;
- if (*quality < 0 || *quality > 100)
- *quality = kDefaultScreenshotQuality;
- if (*scale <= 0 || *scale > 1)
- *scale = 1;
-}
-
} // namespace
+namespace content {
+
RendererOverridesHandler::RendererOverridesHandler(DevToolsAgentHost* agent)
: agent_(agent),
weak_factory_(this) {
@@ -90,45 +69,10 @@ RendererOverridesHandler::RendererOverridesHandler(DevToolsAgentHost* agent)
base::Bind(
&RendererOverridesHandler::PageCaptureScreenshot,
base::Unretained(this)));
- RegisterCommandHandler(
- devtools::Page::startScreencast::kName,
- base::Bind(
- &RendererOverridesHandler::PageStartScreencast,
- base::Unretained(this)));
- RegisterCommandHandler(
- devtools::Page::stopScreencast::kName,
- base::Bind(
- &RendererOverridesHandler::PageStopScreencast,
- base::Unretained(this)));
}
RendererOverridesHandler::~RendererOverridesHandler() {}
-void RendererOverridesHandler::OnSwapCompositorFrame() {
- if (!screencast_command_)
- return;
-
- std::string format;
- int quality = kDefaultScreenshotQuality;
- double scale = 1;
- ParseCaptureParameters(screencast_command_.get(), &format, &quality, &scale);
-
- RenderViewHost* host = agent_->GetRenderViewHost();
- RenderWidgetHostViewPort* view_port =
- RenderWidgetHostViewPort::FromRWHV(host->GetView());
-
- gfx::Rect view_bounds = host->GetView()->GetViewBounds();
- gfx::Size snapshot_size = gfx::ToFlooredSize(
- gfx::ScaleSize(view_bounds.size(), scale));
-
- view_port->CopyFromCompositingSurface(
- view_bounds, snapshot_size,
- base::Bind(&RendererOverridesHandler::ScreenshotCaptured,
- weak_factory_.GetWeakPtr(),
- scoped_refptr<DevToolsProtocol::Command>(), format, quality,
- scale));
-}
-
scoped_refptr<DevToolsProtocol::Response>
RendererOverridesHandler::GrantPermissionsForSetFileInputFiles(
scoped_refptr<DevToolsProtocol::Command> command) {
@@ -211,10 +155,25 @@ RendererOverridesHandler::PageNavigate(
scoped_refptr<DevToolsProtocol::Response>
RendererOverridesHandler::PageCaptureScreenshot(
scoped_refptr<DevToolsProtocol::Command> command) {
+ // Parse input parameters.
std::string format;
int quality = kDefaultScreenshotQuality;
double scale = 1;
- ParseCaptureParameters(command.get(), &format, &quality, &scale);
+ base::DictionaryValue* params = command->params();
+ if (params) {
+ params->GetString(devtools::Page::captureScreenshot::kParamFormat,
+ &format);
+ params->GetInteger(devtools::Page::captureScreenshot::kParamQuality,
+ &quality);
+ params->GetDouble(devtools::Page::captureScreenshot::kParamScale,
+ &scale);
+ }
+ if (format.empty())
+ format = kPng;
+ if (quality < 0 || quality > 100)
+ quality = kDefaultScreenshotQuality;
+ if (scale <= 0 || scale > 1)
+ scale = 1;
RenderViewHost* host = agent_->GetRenderViewHost();
gfx::Rect view_bounds = host->GetView()->GetViewBounds();
@@ -251,21 +210,6 @@ RendererOverridesHandler::PageCaptureScreenshot(
return command->AsyncResponsePromise();
}
-scoped_refptr<DevToolsProtocol::Response>
-RendererOverridesHandler::PageStartScreencast(
- scoped_refptr<DevToolsProtocol::Command> command) {
- screencast_command_ = command;
- OnSwapCompositorFrame();
- return command->SuccessResponse(NULL);
-}
-
-scoped_refptr<DevToolsProtocol::Response>
-RendererOverridesHandler::PageStopScreencast(
- scoped_refptr<DevToolsProtocol::Command> command) {
- screencast_command_ = NULL;
- return command->SuccessResponse(NULL);
-}
-
void RendererOverridesHandler::ScreenshotCaptured(
scoped_refptr<DevToolsProtocol::Command> command,
const std::string& format,
@@ -274,10 +218,9 @@ void RendererOverridesHandler::ScreenshotCaptured(
bool success,
const SkBitmap& bitmap) {
if (!success) {
- if (command) {
- SendAsyncResponse(
- command->InternalErrorResponse("Unable to capture screenshot"));
- }
+ SendRawMessage(
+ command->InternalErrorResponse("Unable to capture screenshot")->
+ Serialize());
return;
}
@@ -304,35 +247,27 @@ void RendererOverridesHandler::ScreenshotCaptured(
}
if (!encoded) {
- if (command) {
- SendAsyncResponse(
- command->InternalErrorResponse("Unable to encode screenshot"));
- }
+ SendRawMessage(
+ command->InternalErrorResponse("Unable to encode screenshot")->
+ Serialize());
return;
}
std::string base_64_data;
if (!base::Base64Encode(base::StringPiece(
- reinterpret_cast<char*>(&data[0]),
- data.size()),
+ reinterpret_cast<char*>(&data[0]),
+ data.size()),
&base_64_data)) {
- if (command) {
- SendAsyncResponse(
- command->InternalErrorResponse("Unable to base64 encode"));
- }
+ SendRawMessage(
+ command->InternalErrorResponse("Unable to base64 encode screenshot")->
+ Serialize());
return;
}
base::DictionaryValue* response = new base::DictionaryValue();
- if (command) {
- response->SetString(
- devtools::Page::captureScreenshot::kResponseData, base_64_data);
- SendAsyncResponse(command->SuccessResponse(response));
- } else {
- response->SetString(
- devtools::Page::screencastFrame::kResponseData, base_64_data);
- SendNotification(devtools::Page::screencastFrame::kName, response);
- }
+ response->SetString(
+ devtools::Page::captureScreenshot::kResponseData, base_64_data);
+ SendRawMessage(command->SuccessResponse(response)->Serialize());
}
} // namespace content
diff --git a/chromium/content/browser/devtools/renderer_overrides_handler.h b/chromium/content/browser/devtools/renderer_overrides_handler.h
index 7e5814b9d28..1d4213d8be6 100644
--- a/chromium/content/browser/devtools/renderer_overrides_handler.h
+++ b/chromium/content/browser/devtools/renderer_overrides_handler.h
@@ -26,8 +26,6 @@ class RendererOverridesHandler : public DevToolsProtocol::Handler {
explicit RendererOverridesHandler(DevToolsAgentHost* agent);
virtual ~RendererOverridesHandler();
- void OnSwapCompositorFrame();
-
private:
scoped_refptr<DevToolsProtocol::Response>
GrantPermissionsForSetFileInputFiles(
@@ -38,10 +36,6 @@ class RendererOverridesHandler : public DevToolsProtocol::Handler {
scoped_refptr<DevToolsProtocol::Command> command);
scoped_refptr<DevToolsProtocol::Response> PageCaptureScreenshot(
scoped_refptr<DevToolsProtocol::Command> command);
- scoped_refptr<DevToolsProtocol::Response> PageStartScreencast(
- scoped_refptr<DevToolsProtocol::Command> command);
- scoped_refptr<DevToolsProtocol::Response> PageStopScreencast(
- scoped_refptr<DevToolsProtocol::Command> command);
void ScreenshotCaptured(
scoped_refptr<DevToolsProtocol::Command> command,
@@ -53,7 +47,6 @@ class RendererOverridesHandler : public DevToolsProtocol::Handler {
DevToolsAgentHost* agent_;
base::WeakPtrFactory<RendererOverridesHandler> weak_factory_;
- scoped_refptr<DevToolsProtocol::Command> screencast_command_;
DISALLOW_COPY_AND_ASSIGN(RendererOverridesHandler);
};