| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 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 #include "chrome/browser/ui/webui/chromeos/login/error_screen_handler.h" |    5 #include "chrome/browser/ui/webui/chromeos/login/error_screen_handler.h" | 
|    6  |    6  | 
|    7 #include "base/logging.h" |    7 #include "base/logging.h" | 
|    8 #include "base/message_loop/message_loop.h" |    8 #include "base/message_loop/message_loop.h" | 
|    9 #include "base/time/time.h" |    9 #include "base/time/time.h" | 
|   10 #include "chrome/browser/chrome_notification_types.h" |   10 #include "chrome/browser/chrome_notification_types.h" | 
|   11 #include "chrome/browser/chromeos/login/captive_portal_window_proxy.h" |   11 #include "chrome/browser/chromeos/login/captive_portal_window_proxy.h" | 
|   12 #include "chrome/browser/chromeos/login/login_display_host_impl.h" |   12 #include "chrome/browser/chromeos/login/login_display_host_impl.h" | 
|   13 #include "chrome/browser/chromeos/login/webui_login_view.h" |   13 #include "chrome/browser/chromeos/login/webui_login_view.h" | 
|   14 #include "chrome/browser/chromeos/net/network_portal_detector.h" |   14 #include "chrome/browser/chromeos/net/network_portal_detector.h" | 
|   15 #include "chrome/browser/ui/webui/chromeos/login/native_window_delegate.h" |   15 #include "chrome/browser/ui/webui/chromeos/login/native_window_delegate.h" | 
|   16 #include "chrome/browser/ui/webui/chromeos/login/network_state_informer.h" |   16 #include "chrome/browser/ui/webui/chromeos/login/network_state_informer.h" | 
|   17 #include "chromeos/dbus/dbus_thread_manager.h" |   17 #include "chromeos/dbus/dbus_thread_manager.h" | 
 |   18 #include "chromeos/dbus/power_manager_client.h" | 
|   18 #include "chromeos/dbus/session_manager_client.h" |   19 #include "chromeos/dbus/session_manager_client.h" | 
|   19 #include "grit/chromium_strings.h" |   20 #include "grit/chromium_strings.h" | 
|   20 #include "grit/generated_resources.h" |   21 #include "grit/generated_resources.h" | 
|   21  |   22  | 
|   22 namespace { |   23 namespace { | 
|   23  |   24  | 
|   24 const char kJsScreenPath[] = "login.ErrorMessageScreen"; |   25 const char kJsScreenPath[] = "login.ErrorMessageScreen"; | 
|   25  |   26  | 
|   26 }  // namespace |   27 }  // namespace | 
|   27  |   28  | 
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  133  |  134  | 
|  134 void ErrorScreenHandler::HandleHideCaptivePortal() { |  135 void ErrorScreenHandler::HandleHideCaptivePortal() { | 
|  135   HideCaptivePortal(); |  136   HideCaptivePortal(); | 
|  136 } |  137 } | 
|  137  |  138  | 
|  138 void ErrorScreenHandler::HandleLocalStateErrorPowerwashButtonClicked() { |  139 void ErrorScreenHandler::HandleLocalStateErrorPowerwashButtonClicked() { | 
|  139   chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> |  140   chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> | 
|  140       StartDeviceWipe(); |  141       StartDeviceWipe(); | 
|  141 } |  142 } | 
|  142  |  143  | 
 |  144 void ErrorScreenHandler::HandleRebootButtonClicked() { | 
 |  145   chromeos::DBusThreadManager::Get()->GetPowerManagerClient()->RequestRestart(); | 
 |  146 } | 
 |  147  | 
|  143 void ErrorScreenHandler::RegisterMessages() { |  148 void ErrorScreenHandler::RegisterMessages() { | 
|  144   AddCallback("showCaptivePortal", |  149   AddCallback("showCaptivePortal", | 
|  145               &ErrorScreenHandler::HandleShowCaptivePortal); |  150               &ErrorScreenHandler::HandleShowCaptivePortal); | 
|  146   AddCallback("hideCaptivePortal", |  151   AddCallback("hideCaptivePortal", | 
|  147               &ErrorScreenHandler::HandleHideCaptivePortal); |  152               &ErrorScreenHandler::HandleHideCaptivePortal); | 
|  148   AddCallback("localStateErrorPowerwashButtonClicked", |  153   AddCallback("localStateErrorPowerwashButtonClicked", | 
|  149               &ErrorScreenHandler::HandleLocalStateErrorPowerwashButtonClicked); |  154               &ErrorScreenHandler::HandleLocalStateErrorPowerwashButtonClicked); | 
 |  155   AddCallback("rebootButtonClicked", | 
 |  156               &ErrorScreenHandler::HandleRebootButtonClicked); | 
|  150 } |  157 } | 
|  151  |  158  | 
|  152 void ErrorScreenHandler::DeclareLocalizedValues( |  159 void ErrorScreenHandler::DeclareLocalizedValues( | 
|  153     LocalizedValuesBuilder* builder) { |  160     LocalizedValuesBuilder* builder) { | 
|  154   builder->Add("loginErrorTitle", IDS_LOGIN_ERROR_TITLE); |  161   builder->Add("loginErrorTitle", IDS_LOGIN_ERROR_TITLE); | 
|  155   builder->Add("signinOfflineMessageBody", IDS_LOGIN_OFFLINE_MESSAGE); |  162   builder->Add("signinOfflineMessageBody", IDS_LOGIN_OFFLINE_MESSAGE); | 
|  156   builder->Add("kioskOfflineMessageBody", IDS_KIOSK_OFFLINE_MESSAGE); |  163   builder->Add("kioskOfflineMessageBody", IDS_KIOSK_OFFLINE_MESSAGE); | 
|  157   builder->Add("captivePortalTitle", IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_TITLE); |  164   builder->Add("captivePortalTitle", IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_TITLE); | 
|  158   builder->Add("captivePortalMessage", IDS_LOGIN_MAYBE_CAPTIVE_PORTAL); |  165   builder->Add("captivePortalMessage", IDS_LOGIN_MAYBE_CAPTIVE_PORTAL); | 
|  159   builder->Add("captivePortalProxyMessage", |  166   builder->Add("captivePortalProxyMessage", | 
|  160                IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_PROXY); |  167                IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_PROXY); | 
|  161   builder->Add("captivePortalNetworkSelect", |  168   builder->Add("captivePortalNetworkSelect", | 
|  162                IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_NETWORK_SELECT); |  169                IDS_LOGIN_MAYBE_CAPTIVE_PORTAL_NETWORK_SELECT); | 
|  163   builder->Add("signinProxyMessageText", IDS_LOGIN_PROXY_ERROR_MESSAGE); |  170   builder->Add("signinProxyMessageText", IDS_LOGIN_PROXY_ERROR_MESSAGE); | 
|  164   builder->Add("updateOfflineMessageBody", IDS_UPDATE_OFFLINE_MESSAGE); |  171   builder->Add("updateOfflineMessageBody", IDS_UPDATE_OFFLINE_MESSAGE); | 
|  165   builder->Add("updateProxyMessageText", IDS_UPDATE_PROXY_ERROR_MESSAGE); |  172   builder->Add("updateProxyMessageText", IDS_UPDATE_PROXY_ERROR_MESSAGE); | 
|  166   builder->AddF("localStateErrorText0", IDS_LOCAL_STATE_ERROR_TEXT_0, |  173   builder->AddF("localStateErrorText0", IDS_LOCAL_STATE_ERROR_TEXT_0, | 
|  167                 IDS_SHORT_PRODUCT_NAME); |  174                 IDS_SHORT_PRODUCT_NAME); | 
|  168   builder->Add("localStateErrorText1", IDS_LOCAL_STATE_ERROR_TEXT_1); |  175   builder->Add("localStateErrorText1", IDS_LOCAL_STATE_ERROR_TEXT_1); | 
|  169   builder->Add("localStateErrorPowerwashButton", |  176   builder->Add("localStateErrorPowerwashButton", | 
|  170                IDS_LOCAL_STATE_ERROR_POWERWASH_BUTTON); |  177                IDS_LOCAL_STATE_ERROR_POWERWASH_BUTTON); | 
 |  178   builder->Add("rebootButton", IDS_RELAUNCH_BUTTON); | 
|  171 } |  179 } | 
|  172  |  180  | 
|  173 void ErrorScreenHandler::Initialize() { |  181 void ErrorScreenHandler::Initialize() { | 
|  174   if (!page_is_ready()) |  182   if (!page_is_ready()) | 
|  175     return; |  183     return; | 
|  176   if (show_on_init_) { |  184   if (show_on_init_) { | 
|  177     base::DictionaryValue params; |  185     base::DictionaryValue params; | 
|  178     params.SetInteger("uiState", static_cast<int>(ui_state_)); |  186     params.SetInteger("uiState", static_cast<int>(ui_state_)); | 
|  179     params.SetInteger("errorState", static_cast<int>(error_state_)); |  187     params.SetInteger("errorState", static_cast<int>(error_state_)); | 
|  180     params.SetString("network", network_); |  188     params.SetString("network", network_); | 
|  181     params.SetBoolean("guestSigninAllowed", guest_signin_allowed_); |  189     params.SetBoolean("guestSigninAllowed", guest_signin_allowed_); | 
|  182     params.SetBoolean("offlineLoginAllowed", offline_login_allowed_); |  190     params.SetBoolean("offlineLoginAllowed", offline_login_allowed_); | 
|  183     Show(parent_screen_, ¶ms); |  191     Show(parent_screen_, ¶ms); | 
|  184     show_on_init_ = false; |  192     show_on_init_ = false; | 
|  185   } |  193   } | 
|  186 } |  194 } | 
|  187  |  195  | 
|  188 }  // namespace chromeos |  196 }  // namespace chromeos | 
| OLD | NEW |