diff options
Diffstat (limited to 'chromium/content/public/browser/android/download_controller_android.h')
-rw-r--r-- | chromium/content/public/browser/android/download_controller_android.h | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/chromium/content/public/browser/android/download_controller_android.h b/chromium/content/public/browser/android/download_controller_android.h index 65da4b82f8f..00844928dd7 100644 --- a/chromium/content/public/browser/android/download_controller_android.h +++ b/chromium/content/public/browser/android/download_controller_android.h @@ -5,6 +5,7 @@ #ifndef CONTENT_PUBLIC_BROWSER_ANDROID_DOWNLOAD_CONTROLLER_ANDROID_H_ #define CONTENT_PUBLIC_BROWSER_ANDROID_DOWNLOAD_CONTROLLER_ANDROID_H_ +#include "base/callback.h" #include "content/common/content_export.h" #include "content/public/common/context_menu_params.h" @@ -19,6 +20,10 @@ class CONTENT_EXPORT DownloadControllerAndroid { // Returns the singleton instance of the DownloadControllerAndroid. static DownloadControllerAndroid* Get(); + // Called to set the DownloadControllerAndroid instance. + static void SetDownloadControllerAndroid( + DownloadControllerAndroid* download_controller); + // Starts a new download request with Android. Should be called on the // UI thread. virtual void CreateGETDownload(int render_process_id, int render_view_id, @@ -38,8 +43,22 @@ class CONTENT_EXPORT DownloadControllerAndroid { virtual void DangerousDownloadValidated( WebContents* web_contents, int download_id, bool accept) = 0; + // Callback when user permission prompt finishes. Args: whether file access + // permission is acquired. + typedef base::Callback<void(bool)> AcquireFileAccessPermissionCallback; + + // Called to prompt the user for file access permission. When finished, + // |callback| will be executed. + virtual void AcquireFileAccessPermission( + WebContents* web_contents, + const AcquireFileAccessPermissionCallback& callback) = 0; + + // Called by unit test to approve or disapprove file access request. + virtual void SetApproveFileAccessRequestForTesting(bool approve) {}; + protected: virtual ~DownloadControllerAndroid() {}; + static DownloadControllerAndroid* download_controller_; }; } // namespace content |