Chromium Code Reviews| Index: chrome/browser/ui/webui/chromeos/login/network_screen_handler.h |
| diff --git a/chrome/browser/ui/webui/chromeos/login/network_screen_handler.h b/chrome/browser/ui/webui/chromeos/login/network_screen_handler.h |
| index 58b2b6011765f54bae4f63e8e70e74ae98053e9a..d638c010166c452bea01b5a3c5e5656d25a6fd18 100644 |
| --- a/chrome/browser/ui/webui/chromeos/login/network_screen_handler.h |
| +++ b/chrome/browser/ui/webui/chromeos/login/network_screen_handler.h |
| @@ -59,6 +59,12 @@ class NetworkScreenHandler : public NetworkScreenActor, |
| void ReloadLocalizedContent(); |
| private: |
| + struct LanguageSwitchResult { |
| + std::string requested_locale; |
| + std::string loaded_locale; |
| + bool success; |
| + }; |
| + |
| // Handles moving off the screen. |
| void HandleOnExit(); |
| @@ -84,6 +90,15 @@ class NetworkScreenHandler : public NetworkScreenActor, |
| // Returns available timezones. Caller gets the ownership. |
| static base::ListValue* GetTimezoneList(); |
| + // Starts resolving language list on BlockingPool. |
| + void ScheduleResolveLanguageList(); |
| + |
| + // Callback for ScheduleResolveLanguageList(). |
| + void OnLanguageListResolved( |
| + scoped_ptr<scoped_ptr<base::ListValue>> new_language_list, |
| + scoped_ptr<std::string> new_language_list_locale, |
| + scoped_ptr<std::string> new_selected_language); |
| + |
| NetworkScreenActor::Delegate* screen_; |
| CoreOobeActor* core_oobe_actor_; |
| @@ -100,6 +115,15 @@ class NetworkScreenHandler : public NetworkScreenActor, |
| // The exact language code selected by user in the menu. |
| std::string selected_language_code_; |
| + // Creation of language list happens on Blocking Pool, so we cache resolved |
| + // data. |
| + std::string language_list_locale_; |
| + scoped_ptr<base::ListValue> language_list_; |
| + |
| + // "Selected language" should be calculated on Blocking Pool, so we need to |
| + // remember results of language switching. |
| + LanguageSwitchResult language_switch_result_; |
|
dzhioev (left Google)
2014/10/01 15:08:08
No need to save this struct.
Alexander Alekseev
2014/10/02 13:12:07
Done.
|
| + |
| base::WeakPtrFactory<NetworkScreenHandler> weak_ptr_factory_; |
| DISALLOW_COPY_AND_ASSIGN(NetworkScreenHandler); |