Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "extensions/browser/api/web_view/web_view_internal_api.h" | 5 #include "extensions/browser/api/web_view/web_view_internal_api.h" |
| 6 | 6 |
| 7 #include "base/strings/stringprintf.h" | 7 #include "base/strings/stringprintf.h" |
| 8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" |
| 9 #include "content/public/browser/render_process_host.h" | 9 #include "content/public/browser/render_process_host.h" |
| 10 #include "content/public/browser/render_view_host.h" | 10 #include "content/public/browser/render_view_host.h" |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 95 return false; | 95 return false; |
| 96 | 96 |
| 97 base::DictionaryValue* details_value = NULL; | 97 base::DictionaryValue* details_value = NULL; |
| 98 if (!args_->GetDictionary(2, &details_value)) | 98 if (!args_->GetDictionary(2, &details_value)) |
| 99 return false; | 99 return false; |
| 100 scoped_ptr<InjectDetails> details(new InjectDetails()); | 100 scoped_ptr<InjectDetails> details(new InjectDetails()); |
| 101 if (!InjectDetails::Populate(*details_value, details.get())) | 101 if (!InjectDetails::Populate(*details_value, details.get())) |
| 102 return false; | 102 return false; |
| 103 | 103 |
| 104 details_ = details.Pass(); | 104 details_ = details.Pass(); |
| 105 return true; | 105 |
| 106 if (extension()) { | |
| 107 set_host_id(make_scoped_ptr(new HostID(HostID::EXTENSIONS, | |
| 108 extension()->id()))); | |
| 109 return true; | |
| 110 } | |
| 111 | |
| 112 auto rvh = render_view_host(); | |
|
Devlin
2015/02/25 17:22:36
Why use auto here? It subtracts, rather than adds
Xi Han
2015/02/26 15:13:45
Updated.
| |
| 113 if (rvh) { | |
| 114 WebContents* web_contents = WebContents::FromRenderViewHost(rvh); | |
| 115 if (web_contents && web_contents->GetWebUI()) { | |
| 116 const GURL& url = rvh->GetSiteInstance()->GetSiteURL(); | |
| 117 set_host_id(make_scoped_ptr(new HostID(HostID::WEBUI, url.spec()))); | |
| 118 return true; | |
| 119 } | |
| 120 } | |
| 121 return false; | |
| 106 } | 122 } |
| 107 | 123 |
| 108 bool WebViewInternalExecuteCodeFunction::ShouldInsertCSS() const { | 124 bool WebViewInternalExecuteCodeFunction::ShouldInsertCSS() const { |
| 109 return false; | 125 return false; |
| 110 } | 126 } |
| 111 | 127 |
| 112 bool WebViewInternalExecuteCodeFunction::CanExecuteScriptOnPage() { | 128 bool WebViewInternalExecuteCodeFunction::CanExecuteScriptOnPage() { |
| 113 return true; | 129 return true; |
| 114 } | 130 } |
| 115 | 131 |
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 510 // Will finish asynchronously. | 526 // Will finish asynchronously. |
| 511 return true; | 527 return true; |
| 512 } | 528 } |
| 513 | 529 |
| 514 void WebViewInternalClearDataFunction::ClearDataDone() { | 530 void WebViewInternalClearDataFunction::ClearDataDone() { |
| 515 Release(); // Balanced in RunAsync(). | 531 Release(); // Balanced in RunAsync(). |
| 516 SendResponse(true); | 532 SendResponse(true); |
| 517 } | 533 } |
| 518 | 534 |
| 519 } // namespace extensions | 535 } // namespace extensions |
| OLD | NEW |