| Index: chrome/browser/devtools/device/devtools_device_discovery.cc
|
| diff --git a/chrome/browser/devtools/device/devtools_device_discovery.cc b/chrome/browser/devtools/device/devtools_device_discovery.cc
|
| index 432f3dd684e20e4d4fb6d3e1d70d3ef4ac832630..630b1e1341522c9533f59f49a42cf67067a64003 100644
|
| --- a/chrome/browser/devtools/device/devtools_device_discovery.cc
|
| +++ b/chrome/browser/devtools/device/devtools_device_discovery.cc
|
| @@ -252,6 +252,9 @@ AgentHostDelegate::AgentHostDelegate(
|
| socket_opened_(false),
|
| agent_host_(nullptr),
|
| proxy_(nullptr) {
|
| + if (!GURL(frontend_url_).has_scheme() && value) {
|
| + frontend_url_ = GetStringProperty(value, "Proxy-devtoolsFrontendUrl");
|
| + }
|
| }
|
|
|
| AgentHostDelegate::~AgentHostDelegate() {
|
| @@ -458,6 +461,10 @@ void DevToolsDeviceDiscovery::DiscoveryRequest::ReceivedVersion(
|
| else
|
| browser->version_ = browser_name;
|
| }
|
| + std::string webkit_version;
|
| + if (dict->GetString("WebKit-Version", &webkit_version)) {
|
| + browser->webkit_version_ = webkit_version;
|
| + }
|
| std::string package;
|
| if (dict->GetString("Android-Package", &package)) {
|
| browser->display_name_ =
|
| @@ -479,9 +486,14 @@ void DevToolsDeviceDiscovery::DiscoveryRequest::ReceivedPages(
|
| if (value && value->GetAsList(&list_value)) {
|
| for (const auto& page_value : *list_value) {
|
| base::DictionaryValue* dict;
|
| - if (page_value->GetAsDictionary(&dict))
|
| + if (page_value->GetAsDictionary(&dict)) {
|
| + const char kFrontEndURL[] =
|
| + "http://chrome-devtools-frontend.appspot.com/serve_rev/%s/inspector.html";
|
| + dict->SetString("Proxy-devtoolsFrontendUrl",
|
| + base::StringPrintf(kFrontEndURL, browser->WebKitRevision().c_str()));
|
| browser->pages_.push_back(
|
| new RemotePage(device, browser->browser_id_, *dict));
|
| + }
|
| }
|
| }
|
| }
|
| @@ -545,6 +557,15 @@ DevToolsDeviceDiscovery::RemoteBrowser::GetParsedVersion() {
|
| return result;
|
| }
|
|
|
| +std::string DevToolsDeviceDiscovery::RemoteBrowser::WebKitRevision() {
|
| + std::string webkit_revision;
|
| + size_t l = webkit_version_.find('@');
|
| + size_t r = webkit_version_.rfind(')');
|
| + if (l != std::string::npos && r != std::string::npos && r > l)
|
| + webkit_revision = webkit_version_.substr(l, r-l);
|
| + return webkit_revision;
|
| +}
|
| +
|
| DevToolsDeviceDiscovery::RemoteBrowser::~RemoteBrowser() {
|
| }
|
|
|
|
|