summaryrefslogtreecommitdiffstats
path: root/content/browser/devtools/devtools_http_handler_impl.cc
diff options
context:
space:
mode:
authorkaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-18 15:55:58 +0000
committerkaznacheev@chromium.org <kaznacheev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-18 15:55:58 +0000
commite403bda5f5360f63775059a285c03df26e849a55 (patch)
tree395640e5a4bf2fb92e7206d507ea245a825fb44e /content/browser/devtools/devtools_http_handler_impl.cc
parent925b16a1c43cf5484748c41b74ba150a17173a56 (diff)
downloadchromium_src-e403bda5f5360f63775059a285c03df26e849a55.zip
chromium_src-e403bda5f5360f63775059a285c03df26e849a55.tar.gz
chromium_src-e403bda5f5360f63775059a285c03df26e849a55.tar.bz2
Added page type to remote debugger json/list
BUG=169081 Review URL: https://chromiumcodereview.appspot.com/11879045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177683 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/devtools/devtools_http_handler_impl.cc')
-rw-r--r--content/browser/devtools/devtools_http_handler_impl.cc19
1 files changed, 16 insertions, 3 deletions
diff --git a/content/browser/devtools/devtools_http_handler_impl.cc b/content/browser/devtools/devtools_http_handler_impl.cc
index 428370d..6555345 100644
--- a/content/browser/devtools/devtools_http_handler_impl.cc
+++ b/content/browser/devtools/devtools_http_handler_impl.cc
@@ -397,6 +397,7 @@ struct DevToolsHttpHandlerImpl::PageInfo {
std::string id;
std::string url;
+ std::string type;
bool attached;
std::string title;
std::string thumbnail_url;
@@ -431,7 +432,7 @@ DevToolsHttpHandlerImpl::PageList DevToolsHttpHandlerImpl::GeneratePageList() {
RenderViewHost* host =
RenderViewHost::From(const_cast<RenderWidgetHost*>(widget));
- page_list.push_back(CreatePageInfo(host));
+ page_list.push_back(CreatePageInfo(host, delegate_->GetTargetType(host)));
}
}
std::sort(page_list.begin(), page_list.end(), SortPageListByTime);
@@ -538,7 +539,9 @@ void DevToolsHttpHandlerImpl::OnJsonRequestUI(
jsonp);
return;
}
- PageInfo page_info = CreatePageInfo(rvh);
+ PageInfo page_info = CreatePageInfo(
+ rvh,
+ DevToolsHttpHandlerDelegate::kTargetTypeTab);
std::string host = info.headers["Host"];
scoped_ptr<DictionaryValue> dictionary(SerializePageInfo(page_info, host));
SendJson(connection_id, net::HTTP_OK, dictionary.get(), "", jsonp);
@@ -828,7 +831,8 @@ void DevToolsHttpHandlerImpl::AcceptWebSocket(
}
DevToolsHttpHandlerImpl::PageInfo
-DevToolsHttpHandlerImpl::CreatePageInfo(RenderViewHost* rvh) {
+DevToolsHttpHandlerImpl::CreatePageInfo(RenderViewHost* rvh,
+ DevToolsHttpHandlerDelegate::TargetType type) {
RenderViewHostDelegate* host_delegate = rvh->GetDelegate();
scoped_refptr<DevToolsAgentHost> agent(DevToolsAgentHost::GetFor(rvh));
DevToolsClientHost* client_host = DevToolsManager::GetInstance()->
@@ -838,6 +842,14 @@ DevToolsHttpHandlerImpl::CreatePageInfo(RenderViewHost* rvh) {
page_info.attached = client_host != NULL;
page_info.url = host_delegate->GetURL().spec();
+ switch (type) {
+ case DevToolsHttpHandlerDelegate::kTargetTypeTab:
+ page_info.type = "page";
+ break;
+ default:
+ page_info.type = "other";
+ }
+
WebContents* web_contents = host_delegate->GetAsWebContents();
if (web_contents) {
page_info.title = UTF16ToUTF8(
@@ -860,6 +872,7 @@ DictionaryValue* DevToolsHttpHandlerImpl::SerializePageInfo(
DictionaryValue* dictionary = new DictionaryValue;
dictionary->SetString("title", page_info.title);
dictionary->SetString("url", page_info.url);
+ dictionary->SetString("type", page_info.type);
dictionary->SetString("thumbnailUrl", page_info.thumbnail_url);
dictionary->SetString("faviconUrl", page_info.favicon_url);
if (!page_info.attached) {