Chromium Code Reviews| Index: chrome/browser/ui/android/infobars/download_overwrite_infobar.h |
| diff --git a/chrome/browser/ui/android/infobars/download_overwrite_infobar.h b/chrome/browser/ui/android/infobars/download_overwrite_infobar.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..bb6a69a2ae41e2f7ca43bad6dc1097e957b54e40 |
| --- /dev/null |
| +++ b/chrome/browser/ui/android/infobars/download_overwrite_infobar.h |
| @@ -0,0 +1,45 @@ |
| +// Copyright 2015 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_UI_ANDROID_INFOBARS_DOWNLOAD_OVERWRITE_INFOBAR_H_ |
| +#define CHROME_BROWSER_UI_ANDROID_INFOBARS_DOWNLOAD_OVERWRITE_INFOBAR_H_ |
| + |
| +#include "base/android/scoped_java_ref.h" |
| +#include "base/basictypes.h" |
| +#include "chrome/browser/ui/android/infobars/infobar_android.h" |
| + |
| +namespace chrome { |
| +namespace android { |
| +class DownloadOverwriteInfoBarDelegate; |
| +} |
| +} |
| + |
| +// A native-side implementation of an infobar to ask whether to overwrite |
| +// an existing file with a new download. |
| +class DownloadOverwriteInfoBar : public InfoBarAndroid { |
|
Peter Kasting
2015/02/18 00:51:31
Instead of adding this class, the Java-side class,
Changwan Ryu
2015/02/18 07:15:03
I discussed this with tedchoc@ and newt@. Because
|
| + public: |
| + static scoped_ptr<infobars::InfoBar> CreateInfoBar( |
| + scoped_ptr<chrome::android::DownloadOverwriteInfoBarDelegate> delegate); |
| + ~DownloadOverwriteInfoBar() override; |
| + |
| + private: |
| + explicit DownloadOverwriteInfoBar( |
| + scoped_ptr<chrome::android::DownloadOverwriteInfoBarDelegate> delegate); |
| + |
| + // InfoBarAndroid: |
| + base::android::ScopedJavaLocalRef<jobject> CreateRenderInfoBar( |
| + JNIEnv* env) override; |
| + void ProcessButton(int action, const std::string& action_value) override; |
| + |
| + chrome::android::DownloadOverwriteInfoBarDelegate* GetDelegate(); |
| + |
| + base::android::ScopedJavaGlobalRef<jobject> java_delegate_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(DownloadOverwriteInfoBar); |
| +}; |
| + |
| +// Registers the native methods through JNI. |
| +bool RegisterDownloadOverwriteInfoBarDelegate(JNIEnv* env); |
| + |
| +#endif // CHROME_BROWSER_UI_ANDROID_INFOBARS_DOWNLOAD_OVERWRITE_INFOBAR_H_ |