Index: chrome/browser/guest_view/web_view/web_view_guest.cc |
diff --git a/chrome/browser/guest_view/web_view/web_view_guest.cc b/chrome/browser/guest_view/web_view/web_view_guest.cc |
index c9e75d13a0b4b9f35f3275b71f49330c000bfe3b..a78495c85fcefbac188574f5381c8308b22b8c71 100644 |
--- a/chrome/browser/guest_view/web_view/web_view_guest.cc |
+++ b/chrome/browser/guest_view/web_view/web_view_guest.cc |
@@ -935,75 +935,50 @@ bool WebViewGuest::ClearData(const base::Time remove_since, |
} |
// static |
-void WebViewGuest::FileSystemAccessedAsync(int render_process_id, |
- int render_frame_id, |
- int request_id, |
- const GURL& url, |
- bool blocked_by_policy) { |
+void WebViewGuest::FileSystemAccessed(int render_process_id, |
+ int render_frame_id, |
+ const GURL& url, |
+ bool blocked_by_policy, |
+ base::Callback<void(bool)> callback) { |
WebViewGuest* guest = |
WebViewGuest::FromFrameID(render_process_id, render_frame_id); |
DCHECK(guest); |
guest->RequestFileSystemPermission( |
url, |
!blocked_by_policy, |
- base::Bind(&WebViewGuest::FileSystemAccessedAsyncResponse, |
+ base::Bind(&WebViewGuest::FileSystemAccessedResponse, |
render_process_id, |
render_frame_id, |
- request_id, |
- url)); |
+ url, |
+ callback)); |
} |
// static |
-void WebViewGuest::FileSystemAccessedAsyncResponse(int render_process_id, |
- int render_frame_id, |
- int request_id, |
- const GURL& url, |
- bool allowed) { |
+void WebViewGuest::FileSystemAccessedResponse( |
+ int render_process_id, |
+ int render_frame_id, |
+ const GURL& url, |
+ base::Callback<void(bool)> callback, |
+ bool allowed) { |
TabSpecificContentSettings::FileSystemAccessed( |
render_process_id, render_frame_id, url, !allowed); |
- content::RenderFrameHost* render_frame_host = |
- content::RenderFrameHost::FromID(render_process_id, render_frame_id); |
- if (!render_frame_host) |
- return; |
- render_frame_host->Send( |
- new ChromeViewMsg_RequestFileSystemAccessAsyncResponse( |
- render_frame_id, request_id, allowed)); |
+ callback.Run(allowed); |
Fady Samuel
2014/07/08 14:42:46
attached() && allowed
Xi Han
2014/07/08 21:28:24
The attached() && allowed is done in WebViewGuest:
|
} |
// static |
-void WebViewGuest::FileSystemAccessedSync(int render_process_id, |
- int render_frame_id, |
- const GURL& url, |
- bool blocked_by_policy, |
- IPC::Message* reply_msg) { |
+void WebViewGuest::RequestFileSystemAccessPermission( |
Fady Samuel
2014/07/08 14:42:46
RequestFileSystemPermissionFromIOThread
Do the th
Xi Han
2014/07/08 21:28:24
Done.
|
+ int render_process_id, |
+ int render_frame_id, |
+ const GURL& url, |
+ bool blocked_by_policy, |
Fady Samuel
2014/07/08 14:42:46
Can we reduce "blocked_by_policy"? Replace instanc
Xi Han
2014/07/08 21:28:24
Done.
|
+ base::Callback<void(bool)> callback) { |
WebViewGuest* guest = |
WebViewGuest::FromFrameID(render_process_id, render_frame_id); |
DCHECK(guest); |
guest->RequestFileSystemPermission( |
url, |
!blocked_by_policy, |
- base::Bind(&WebViewGuest::FileSystemAccessedSyncResponse, |
- render_process_id, |
- render_frame_id, |
- url, |
- reply_msg)); |
-} |
- |
-// static |
-void WebViewGuest::FileSystemAccessedSyncResponse(int render_process_id, |
- int render_frame_id, |
- const GURL& url, |
- IPC::Message* reply_msg, |
- bool allowed) { |
- TabSpecificContentSettings::FileSystemAccessed( |
- render_process_id, render_frame_id, url, !allowed); |
- ChromeViewHostMsg_RequestFileSystemAccessSync::WriteReplyParams(reply_msg, |
- allowed); |
- content::RenderFrameHost* render_frame_host = |
- content::RenderFrameHost::FromID(render_process_id, render_frame_id); |
- if (!render_frame_id) |
- return; |
- render_frame_host->Send(reply_msg); |
+ callback); |
} |
WebViewGuest::~WebViewGuest() { |