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

Unified Diff: extensions/browser/api/web_request/web_request_event_details.cc

Issue 2002763003: webRequest: reliably determine tabId (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@webRequest-testing-unload
Patch Set: Last nits Created 4 years, 7 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: extensions/browser/api/web_request/web_request_event_details.cc
diff --git a/extensions/browser/api/web_request/web_request_event_details.cc b/extensions/browser/api/web_request/web_request_event_details.cc
index a9f2f83912380831a93f0fc2594122276e4ebd1e..3099ca1f8d09d8feaba1a96e837058acb80bd95b 100644
--- a/extensions/browser/api/web_request/web_request_event_details.cc
+++ b/extensions/browser/api/web_request/web_request_event_details.cc
@@ -149,21 +149,24 @@ void WebRequestEventDetails::SetResponseSource(const net::URLRequest* request) {
dict_.SetString(keys::kIpKey, response_ip);
}
-void WebRequestEventDetails::DetermineFrameIdOnUI() {
+void WebRequestEventDetails::DetermineFrameDataOnUI() {
DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
content::RenderFrameHost* rfh =
content::RenderFrameHost::FromID(render_process_id_, render_frame_id_);
- dict_.SetInteger(keys::kFrameIdKey, ExtensionApiFrameIdMap::GetFrameId(rfh));
- dict_.SetInteger(keys::kParentFrameIdKey,
- ExtensionApiFrameIdMap::GetParentFrameId(rfh));
+ ExtensionApiFrameIdMap::FrameData frame_data =
+ ExtensionApiFrameIdMap::Get()->GetFrameData(rfh);
+
+ dict_.SetInteger(keys::kTabIdKey, frame_data.tab_id);
+ dict_.SetInteger(keys::kFrameIdKey, frame_data.frame_id);
+ dict_.SetInteger(keys::kParentFrameIdKey, frame_data.parent_frame_id);
}
-void WebRequestEventDetails::DetermineFrameIdOnIO(
- const DeterminedFrameIdCallback& callback) {
+void WebRequestEventDetails::DetermineFrameDataOnIO(
+ const DeterminedFrameDataCallback& callback) {
std::unique_ptr<WebRequestEventDetails> self(this);
ExtensionApiFrameIdMap::Get()->GetFrameDataOnIO(
render_process_id_, render_frame_id_,
- base::Bind(&WebRequestEventDetails::OnDeterminedFrameId,
+ base::Bind(&WebRequestEventDetails::OnDeterminedFrameData,
base::Unretained(this), base::Passed(&self), callback));
}
@@ -186,10 +189,11 @@ WebRequestEventDetails::GetAndClearDict() {
return result;
}
-void WebRequestEventDetails::OnDeterminedFrameId(
+void WebRequestEventDetails::OnDeterminedFrameData(
std::unique_ptr<WebRequestEventDetails> self,
- const DeterminedFrameIdCallback& callback,
+ const DeterminedFrameDataCallback& callback,
const ExtensionApiFrameIdMap::FrameData& frame_data) {
+ dict_.SetInteger(keys::kTabIdKey, frame_data.tab_id);
dict_.SetInteger(keys::kFrameIdKey, frame_data.frame_id);
dict_.SetInteger(keys::kParentFrameIdKey, frame_data.parent_frame_id);
callback.Run(std::move(self));
« no previous file with comments | « extensions/browser/api/web_request/web_request_event_details.h ('k') | extensions/browser/extension_api_frame_id_map.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698