OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ | 5 #ifndef CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ |
6 #define CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ | 6 #define CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 23 matching lines...) Expand all Loading... |
34 class TranslatePrefs; | 34 class TranslatePrefs; |
35 class TranslateManager; | 35 class TranslateManager; |
36 } // namespace translate | 36 } // namespace translate |
37 | 37 |
38 class ChromeTranslateClient | 38 class ChromeTranslateClient |
39 : public translate::TranslateClient, | 39 : public translate::TranslateClient, |
40 public translate::ContentTranslateDriver::Observer, | 40 public translate::ContentTranslateDriver::Observer, |
41 public content::WebContentsObserver, | 41 public content::WebContentsObserver, |
42 public content::WebContentsUserData<ChromeTranslateClient> { | 42 public content::WebContentsUserData<ChromeTranslateClient> { |
43 public: | 43 public: |
44 virtual ~ChromeTranslateClient(); | 44 ~ChromeTranslateClient() override; |
45 | 45 |
46 // Gets the LanguageState associated with the page. | 46 // Gets the LanguageState associated with the page. |
47 translate::LanguageState& GetLanguageState(); | 47 translate::LanguageState& GetLanguageState(); |
48 | 48 |
49 // Returns the ContentTranslateDriver instance associated with this | 49 // Returns the ContentTranslateDriver instance associated with this |
50 // WebContents. | 50 // WebContents. |
51 translate::ContentTranslateDriver& translate_driver() { | 51 translate::ContentTranslateDriver& translate_driver() { |
52 return translate_driver_; | 52 return translate_driver_; |
53 } | 53 } |
54 | 54 |
(...skipping 17 matching lines...) Expand all Loading... |
72 std::string* target); | 72 std::string* target); |
73 | 73 |
74 // Gets the associated TranslateManager. | 74 // Gets the associated TranslateManager. |
75 translate::TranslateManager* GetTranslateManager(); | 75 translate::TranslateManager* GetTranslateManager(); |
76 | 76 |
77 // Gets the associated WebContents. Returns NULL if the WebContents is being | 77 // Gets the associated WebContents. Returns NULL if the WebContents is being |
78 // destroyed. | 78 // destroyed. |
79 content::WebContents* GetWebContents(); | 79 content::WebContents* GetWebContents(); |
80 | 80 |
81 // TranslateClient implementation. | 81 // TranslateClient implementation. |
82 virtual translate::TranslateDriver* GetTranslateDriver() override; | 82 translate::TranslateDriver* GetTranslateDriver() override; |
83 virtual PrefService* GetPrefs() override; | 83 PrefService* GetPrefs() override; |
84 virtual scoped_ptr<translate::TranslatePrefs> GetTranslatePrefs() override; | 84 scoped_ptr<translate::TranslatePrefs> GetTranslatePrefs() override; |
85 virtual translate::TranslateAcceptLanguages* GetTranslateAcceptLanguages() | 85 translate::TranslateAcceptLanguages* GetTranslateAcceptLanguages() override; |
86 override; | 86 int GetInfobarIconID() const override; |
87 virtual int GetInfobarIconID() const override; | 87 scoped_ptr<infobars::InfoBar> CreateInfoBar( |
88 virtual scoped_ptr<infobars::InfoBar> CreateInfoBar( | |
89 scoped_ptr<translate::TranslateInfoBarDelegate> delegate) const override; | 88 scoped_ptr<translate::TranslateInfoBarDelegate> delegate) const override; |
90 virtual void ShowTranslateUI(translate::TranslateStep step, | 89 void ShowTranslateUI(translate::TranslateStep step, |
91 const std::string source_language, | 90 const std::string source_language, |
92 const std::string target_language, | 91 const std::string target_language, |
93 translate::TranslateErrors::Type error_type, | 92 translate::TranslateErrors::Type error_type, |
94 bool triggered_from_menu) override; | 93 bool triggered_from_menu) override; |
95 virtual bool IsTranslatableURL(const GURL& url) override; | 94 bool IsTranslatableURL(const GURL& url) override; |
96 virtual void ShowReportLanguageDetectionErrorUI( | 95 void ShowReportLanguageDetectionErrorUI(const GURL& report_url) override; |
97 const GURL& report_url) override; | |
98 | 96 |
99 // ContentTranslateDriver::Observer implementation. | 97 // ContentTranslateDriver::Observer implementation. |
100 virtual void OnLanguageDetermined( | 98 void OnLanguageDetermined( |
101 const translate::LanguageDetectionDetails& details) override; | 99 const translate::LanguageDetectionDetails& details) override; |
102 virtual void OnPageTranslated( | 100 void OnPageTranslated(const std::string& original_lang, |
103 const std::string& original_lang, | 101 const std::string& translated_lang, |
104 const std::string& translated_lang, | 102 translate::TranslateErrors::Type error_type) override; |
105 translate::TranslateErrors::Type error_type) override; | |
106 | 103 |
107 private: | 104 private: |
108 explicit ChromeTranslateClient(content::WebContents* web_contents); | 105 explicit ChromeTranslateClient(content::WebContents* web_contents); |
109 friend class content::WebContentsUserData<ChromeTranslateClient>; | 106 friend class content::WebContentsUserData<ChromeTranslateClient>; |
110 | 107 |
111 // content::WebContentsObserver implementation. | 108 // content::WebContentsObserver implementation. |
112 virtual bool OnMessageReceived(const IPC::Message& message) override; | 109 bool OnMessageReceived(const IPC::Message& message) override; |
113 virtual void WebContentsDestroyed() override; | 110 void WebContentsDestroyed() override; |
114 | 111 |
115 // Shows the translate bubble. | 112 // Shows the translate bubble. |
116 void ShowBubble(translate::TranslateStep step, | 113 void ShowBubble(translate::TranslateStep step, |
117 translate::TranslateErrors::Type error_type); | 114 translate::TranslateErrors::Type error_type); |
118 | 115 |
119 translate::ContentTranslateDriver translate_driver_; | 116 translate::ContentTranslateDriver translate_driver_; |
120 scoped_ptr<translate::TranslateManager> translate_manager_; | 117 scoped_ptr<translate::TranslateManager> translate_manager_; |
121 | 118 |
122 // Provides CLD data for this process. | 119 // Provides CLD data for this process. |
123 scoped_ptr<translate::BrowserCldDataProvider> cld_data_provider_; | 120 scoped_ptr<translate::BrowserCldDataProvider> cld_data_provider_; |
124 | 121 |
125 DISALLOW_COPY_AND_ASSIGN(ChromeTranslateClient); | 122 DISALLOW_COPY_AND_ASSIGN(ChromeTranslateClient); |
126 }; | 123 }; |
127 | 124 |
128 #endif // CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ | 125 #endif // CHROME_BROWSER_TRANSLATE_CHROME_TRANSLATE_CLIENT_H_ |
OLD | NEW |