Chromium Code Reviews| Index: chrome/browser/android/download/chrome_download_delegate.h |
| diff --git a/chrome/browser/android/download/chrome_download_delegate.h b/chrome/browser/android/download/chrome_download_delegate.h |
| index 1ad717c45da315fa9cc5828076ac4c8cdba1d1cf..a9ac8d7898bb153673c066f774fcc43d007f29c2 100644 |
| --- a/chrome/browser/android/download/chrome_download_delegate.h |
| +++ b/chrome/browser/android/download/chrome_download_delegate.h |
| @@ -8,14 +8,36 @@ |
| #include "base/android/jni_android.h" |
| #include "base/android/jni_weak_ref.h" |
| #include "base/android/scoped_java_ref.h" |
| +#include "content/public/browser/android/download_delegate.h" |
| -class ChromeDownloadDelegate { |
| +class ChromeDownloadDelegate : public content::DownloadDelegate { |
| public: |
| // Returns true iff this request resulted in the tab creating the download |
| // to close. |
| static bool EnqueueDownloadManagerRequest(jobject chrome_download_delegate, |
| bool overwrite, |
| jobject download_info); |
| + ChromeDownloadDelegate(jobject obj); |
| + |
| + // DownloadDelegate implementation |
| + void NewHTTPGetDownload(const std::string& url, |
| + const std::string& user_agent, |
| + const std::string& content_disposition, |
| + const std::string& mime_type, |
| + const std::string& cookie, |
| + const std::string& referer, |
| + const base::string16& file_name, |
| + int64_t content_length, |
| + bool has_user_geature, |
| + bool must_download) override; |
| + void OnDownloadStarted(const std::string& filename, |
| + const std::string& mime_type); |
| + void OnDangerousDownload(const std::string& filename, |
| + const std::string& guid); |
| + void RequestFileAccess(intptr_t callback_id); |
| + |
| + private: |
| + base::android::ScopedJavaGlobalRef<jobject> obj_; |
|
no sievers
2016/06/02 23:29:06
If the native instance holds a global ref, we have
Jinsuk Kim
2016/06/03 11:04:14
Replaced with weak reference to it so that ChromeD
|
| }; |
| bool RegisterChromeDownloadDelegate(JNIEnv* env); |