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

Unified Diff: content/browser/browser_plugin/browser_plugin_guest.h

Issue 13037003: permissionrequest API for guest Download. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge two CanDownload* functions. Created 7 years, 9 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: content/browser/browser_plugin/browser_plugin_guest.h
diff --git a/content/browser/browser_plugin/browser_plugin_guest.h b/content/browser/browser_plugin/browser_plugin_guest.h
index 1b480e6acfee67497a9939acae438476fbb43a7c..50e02b0c1b069b90813005d62366aa34e9288aa5 100644
--- a/content/browser/browser_plugin/browser_plugin_guest.h
+++ b/content/browser/browser_plugin/browser_plugin_guest.h
@@ -168,9 +168,10 @@ class CONTENT_EXPORT BrowserPluginGuest : public NotificationObserver,
const gfx::Rect& initial_pos,
bool user_gesture,
bool* was_blocked) OVERRIDE;
- virtual bool CanDownload(RenderViewHost* render_view_host,
+ virtual void CanDownload(RenderViewHost* render_view_host,
int request_id,
- const std::string& request_method) OVERRIDE;
+ const std::string& request_method,
+ const base::Callback<void(bool)>& callback) OVERRIDE;
virtual bool HandleContextMenu(const ContextMenuParams& params) OVERRIDE;
virtual void WebContentsCreated(WebContents* source_contents,
int64 source_frame_id,
@@ -379,6 +380,7 @@ class CONTENT_EXPORT BrowserPluginGuest : public NotificationObserver,
void OnUpdateRect(const ViewHostMsg_UpdateRect_Params& params);
// Helpers for |OnRespondPermission|.
+ void OnRespondPermissionDownload(int request_id, bool should_allow);
void OnRespondPermissionGeolocation(int request_id, bool should_allow);
void OnRespondPermissionMedia(int request_id, bool should_allow);
void OnRespondPermissionNewWindow(int request_id, bool should_allow);
@@ -432,6 +434,9 @@ class CONTENT_EXPORT BrowserPluginGuest : public NotificationObserver,
typedef std::map<int, int> NewWindowRequestMap;
NewWindowRequestMap new_window_request_map_;
+ typedef std::map<int, base::Callback<void(bool)> > DownloadRequestMap;
+ DownloadRequestMap download_request_callback_map_;
+
DISALLOW_COPY_AND_ASSIGN(BrowserPluginGuest);
};

Powered by Google App Engine
This is Rietveld 408576698