Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1297)

Unified Diff: content/browser/debugger/devtools_http_handler_impl.cc

Issue 10985041: DevTools: request page thumbnails from the devtools handler delegate, do not redirect to chrome://t… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Android delegate updated. Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/debugger/devtools_http_handler_impl.cc
diff --git a/content/browser/debugger/devtools_http_handler_impl.cc b/content/browser/debugger/devtools_http_handler_impl.cc
index 7147ce6f00e39c3a208104e139d679c9f0751b0e..704fd406ee094f7d299baf015cf13a5b770bad05 100644
--- a/content/browser/debugger/devtools_http_handler_impl.cc
+++ b/content/browser/debugger/devtools_http_handler_impl.cc
@@ -214,6 +214,16 @@ void DevToolsHttpHandlerImpl::OnHttpRequest(
connection_id,
info));
return;
+ } else if (info.path.find("/thumb/") == 0) {
+ // Thumbnail request.
+ BrowserThread::PostTask(
+ BrowserThread::UI,
+ FROM_HERE,
+ base::Bind(&DevToolsHttpHandlerImpl::OnThumbnailRequestUI,
+ this,
+ connection_id,
+ info));
+ return;
}
if (info.path == "" || info.path == "/") {
@@ -250,9 +260,6 @@ void DevToolsHttpHandlerImpl::OnHttpRequest(
}
std::string base_url = delegate_->GetFrontendResourcesBaseURL();
request = request_context->CreateRequest(GURL(base_url + filename), this);
- } else if (info.path.find("/thumb/") == 0) {
- request = request_context->CreateRequest(
- GURL("chrome:/" + info.path), this);
} else {
server_->Send404(connection_id);
return;
@@ -437,6 +444,24 @@ void DevToolsHttpHandlerImpl::OnJsonRequestUI(
Send200(connection_id, response, "text/javascript; charset=UTF-8");
}
+void DevToolsHttpHandlerImpl::OnThumbnailRequestUI(
+ int connection_id,
+ const net::HttpServerRequestInfo& info) {
+ std::string prefix = "/thumb/";
+ size_t pos = info.path.find(prefix);
+ if (pos != 0) {
+ Send404(connection_id);
+ return;
+ }
+
+ std::string page_url = info.path.substr(prefix.length());
+ std::string data = delegate_->GetPageThumbnailData(GURL(page_url));
+ if (!data.empty())
+ Send200(connection_id, data, "image/png");
+ else
+ Send404(connection_id);
+}
+
void DevToolsHttpHandlerImpl::OnWebSocketRequestUI(
int connection_id,
const net::HttpServerRequestInfo& request) {
« no previous file with comments | « content/browser/debugger/devtools_http_handler_impl.h ('k') | content/public/browser/devtools_http_handler_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698