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

Unified Diff: chrome/browser/ui/android/infobars/translate_compact_infobar.h

Issue 2894553002: Replace OnPageTranslate Obsever by a responder of delegate. (Closed)
Patch Set: fix Created 3 years, 7 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: chrome/browser/ui/android/infobars/translate_compact_infobar.h
diff --git a/chrome/browser/ui/android/infobars/translate_compact_infobar.h b/chrome/browser/ui/android/infobars/translate_compact_infobar.h
index aeabb616fe27b7a9b09335e18414955f6212d4bf..be5fce1c6ed90db49f596e95aa3a4255fa081655 100644
--- a/chrome/browser/ui/android/infobars/translate_compact_infobar.h
+++ b/chrome/browser/ui/android/infobars/translate_compact_infobar.h
@@ -9,7 +9,9 @@
#include "base/macros.h"
#include "chrome/browser/translate/chrome_translate_client.h"
#include "chrome/browser/ui/android/infobars/infobar_android.h"
-#include "components/translate/content/browser/content_translate_driver.h"
+#include "components/translate/core/browser/translate_infobar_delegate.h"
+#include "components/translate/core/browser/translate_step.h"
+#include "components/translate/core/common/translate_errors.h"
namespace translate {
class TranslateInfoBarDelegate;
@@ -17,7 +19,7 @@ class TranslateInfoBarDelegate;
class TranslateCompactInfoBar
: public InfoBarAndroid,
- public translate::ContentTranslateDriver::Observer {
+ public translate::TranslateInfoBarDelegate::Responder {
public:
explicit TranslateCompactInfoBar(
std::unique_ptr<translate::TranslateInfoBarDelegate> delegate);
@@ -44,10 +46,10 @@ class TranslateCompactInfoBar
JNIEnv* env,
const base::android::JavaParamRef<jobject>& obj);
- // ContentTranslateDriver::Observer implementation.
- void OnPageTranslated(const std::string& original_lang,
groby-ooo-7-16 2017/05/20 21:30:39 Who is notifying the ContentTranslateDriver now?
Leo 2017/05/21 04:15:20 This method is used when ContentTranslateDriver fi
- const std::string& translated_lang,
- translate::TranslateErrors::Type error_type) override;
+ // TranslateInfoBarDelegate::Responder implementation.
+ void ActionOnStep(translate::TranslateStep step,
+ translate::TranslateErrors::Type error_type) override;
+ bool Declined() override;
private:
// InfoBarAndroid:
@@ -58,7 +60,19 @@ class TranslateCompactInfoBar
const base::android::JavaRef<jobject>& java_info_bar) override;
translate::TranslateInfoBarDelegate* GetDelegate();
- translate::ContentTranslateDriver* translate_driver_;
+
+ // Bits for trace user actions.
+ unsigned int action_flags_;
groby-ooo-7-16 2017/05/20 21:30:39 This should be of type ActionFlag if you use the e
napper 2017/05/21 23:24:16 I think the int type is correct here, since the en
Leo 2017/05/22 09:08:10 After a little discuss offline with Jon. Seems the
groby-ooo-7-16 2017/05/22 14:34:11 You are of course right about the int - sorry abou
groby-ooo-7-16 2017/05/22 14:34:11 No need to refactor if it introduces many other is
+
+ // User action flags to record what the user has done in each session.
+ enum ActionFlag {
+ FLAG_NONE = 0,
+ FLAG_TRANSLATE = 1 << 0,
+ FLAG_REVERT = 1 << 1,
+ FLAG_ALWAYS_TRANSLATE = 1 << 2,
+ FLAG_NEVER_LANGUAGE = 1 << 3,
+ FLAG_NEVER_SITE = 1 << 4,
+ };
// If number of consecutive translations is equal to this number, infobar will
// automatically trigger "Always Translate".

Powered by Google App Engine
This is Rietveld 408576698