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

Unified Diff: chrome/browser/renderer_host/chrome_render_message_filter.h

Issue 7024056: Handle extension webrequest API on the IO thread. This speeds up blocking event (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 9 years, 6 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: chrome/browser/renderer_host/chrome_render_message_filter.h
diff --git a/chrome/browser/renderer_host/chrome_render_message_filter.h b/chrome/browser/renderer_host/chrome_render_message_filter.h
index 1110517229b8a18f2ec0617b2101df68565be46b..867b824abe58c02b7e3857982bc839e82ec797fa 100644
--- a/chrome/browser/renderer_host/chrome_render_message_filter.h
+++ b/chrome/browser/renderer_host/chrome_render_message_filter.h
@@ -6,8 +6,10 @@
#define CHROME_BROWSER_RENDERER_HOST_CHROME_RENDER_MESSAGE_FILTER_H_
#pragma once
+#include "base/memory/weak_ptr.h"
#include "chrome/common/content_settings.h"
#include "chrome/browser/prefs/pref_member.h"
+#include "chrome/browser/profiles/profile.h"
#include "content/browser/browser_message_filter.h"
#include "content/common/dom_storage_common.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebCache.h"
@@ -16,7 +18,6 @@ struct ExtensionHostMsg_Request_Params;
class FilePath;
class GURL;
class HostContentSettingsMap;
-class Profile;
namespace net {
class URLRequestContextGetter;
@@ -82,6 +83,9 @@ class ChromeRenderMessageFilter : public BrowserMessageFilter {
void OnExtensionRemoveListener(const std::string& extension_id,
const std::string& event_name);
void OnExtensionCloseChannel(int port_id);
+ void OnExtensionRequestForIOThread(
+ int routing_id,
+ const ExtensionHostMsg_Request_Params& params);
#if defined(USE_TCMALLOC)
void OnRendererTcmalloc(base::ProcessId pid, const std::string& output);
#endif
@@ -122,6 +126,7 @@ class ChromeRenderMessageFilter : public BrowserMessageFilter {
const std::string& cookie);
int render_process_id_;
+ ProfileId profile_id_;
// The Profile associated with our renderer process. This should only be
// accessed on the UI thread!
@@ -133,6 +138,8 @@ class ChromeRenderMessageFilter : public BrowserMessageFilter {
BooleanPrefMember allow_outdated_plugins_;
BooleanPrefMember always_authorize_plugins_;
+ base::WeakPtrFactory<ChromeRenderMessageFilter> weak_ptr_factory_;
+
DISALLOW_COPY_AND_ASSIGN(ChromeRenderMessageFilter);
};
« no previous file with comments | « chrome/browser/profiles/profile_io_data.cc ('k') | chrome/browser/renderer_host/chrome_render_message_filter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698