| 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/oobe_ui.h" | 5 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <memory> | 9 #include <memory> |
| 10 | 10 |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 211 display_type_ = GetDisplayType(url); | 211 display_type_ = GetDisplayType(url); |
| 212 | 212 |
| 213 network_state_informer_ = new NetworkStateInformer(); | 213 network_state_informer_ = new NetworkStateInformer(); |
| 214 network_state_informer_->Init(); | 214 network_state_informer_->Init(); |
| 215 | 215 |
| 216 js_calls_container = base::MakeUnique<JSCallsContainer>(); | 216 js_calls_container = base::MakeUnique<JSCallsContainer>(); |
| 217 | 217 |
| 218 auto core_handler = | 218 auto core_handler = |
| 219 base::MakeUnique<CoreOobeHandler>(this, js_calls_container.get()); | 219 base::MakeUnique<CoreOobeHandler>(this, js_calls_container.get()); |
| 220 core_handler_ = core_handler.get(); | 220 core_handler_ = core_handler.get(); |
| 221 AddScreenHandler(std::move(core_handler)); | 221 AddWebUIHandler(std::move(core_handler)); |
| 222 core_handler_->SetDelegate(this); | 222 core_handler_->SetDelegate(this); |
| 223 | 223 |
| 224 auto network_dropdown_handler = base::MakeUnique<NetworkDropdownHandler>(); | 224 auto network_dropdown_handler = base::MakeUnique<NetworkDropdownHandler>(); |
| 225 network_dropdown_handler_ = network_dropdown_handler.get(); | 225 network_dropdown_handler_ = network_dropdown_handler.get(); |
| 226 AddScreenHandler(std::move(network_dropdown_handler)); | 226 AddWebUIHandler(std::move(network_dropdown_handler)); |
| 227 | 227 |
| 228 auto update_screen_handler = base::MakeUnique<UpdateScreenHandler>(); | 228 AddScreenHandler(base::MakeUnique<UpdateScreenHandler>()); |
| 229 update_view_ = update_screen_handler.get(); | |
| 230 AddScreenHandler(std::move(update_screen_handler)); | |
| 231 | 229 |
| 232 if (display_type_ == kOobeDisplay) { | 230 if (display_type_ == kOobeDisplay) |
| 233 auto network_screen_handler = | 231 AddScreenHandler(base::MakeUnique<NetworkScreenHandler>(core_handler_)); |
| 234 base::MakeUnique<NetworkScreenHandler>(core_handler_); | |
| 235 network_view_ = network_screen_handler.get(); | |
| 236 AddScreenHandler(std::move(network_screen_handler)); | |
| 237 } | |
| 238 | 232 |
| 239 auto debugging_screen_handler = | 233 AddScreenHandler(base::MakeUnique<EnableDebuggingScreenHandler>()); |
| 240 base::MakeUnique<EnableDebuggingScreenHandler>(); | |
| 241 debugging_screen_view_ = debugging_screen_handler.get(); | |
| 242 AddScreenHandler(std::move(debugging_screen_handler)); | |
| 243 | 234 |
| 244 auto eula_screen_handler = base::MakeUnique<EulaScreenHandler>(core_handler_); | 235 AddScreenHandler(base::MakeUnique<EulaScreenHandler>(core_handler_)); |
| 245 eula_view_ = eula_screen_handler.get(); | |
| 246 AddScreenHandler(std::move(eula_screen_handler)); | |
| 247 | 236 |
| 248 auto reset_screen_handler = base::MakeUnique<ResetScreenHandler>(); | 237 AddScreenHandler(base::MakeUnique<ResetScreenHandler>()); |
| 249 reset_view_ = reset_screen_handler.get(); | |
| 250 AddScreenHandler(std::move(reset_screen_handler)); | |
| 251 | 238 |
| 252 auto autolaunch_screen_handler = | 239 AddScreenHandler(base::MakeUnique<KioskAutolaunchScreenHandler>()); |
| 253 base::MakeUnique<KioskAutolaunchScreenHandler>(); | |
| 254 autolaunch_screen_view_ = autolaunch_screen_handler.get(); | |
| 255 AddScreenHandler(std::move(autolaunch_screen_handler)); | |
| 256 | 240 |
| 257 auto kiosk_enable_screen_handler = | 241 AddScreenHandler(base::MakeUnique<KioskEnableScreenHandler>()); |
| 258 base::MakeUnique<KioskEnableScreenHandler>(); | |
| 259 kiosk_enable_screen_view_ = kiosk_enable_screen_handler.get(); | |
| 260 AddScreenHandler(std::move(kiosk_enable_screen_handler)); | |
| 261 | 242 |
| 262 auto supervised_user_creation_screen_handler = | 243 auto supervised_user_creation_screen_handler = |
| 263 base::MakeUnique<SupervisedUserCreationScreenHandler>(); | 244 base::MakeUnique<SupervisedUserCreationScreenHandler>(); |
| 264 supervised_user_creation_screen_view_ = | 245 supervised_user_creation_screen_view_ = |
| 265 supervised_user_creation_screen_handler.get(); | 246 supervised_user_creation_screen_handler.get(); |
| 266 AddScreenHandler(std::move(supervised_user_creation_screen_handler)); | 247 AddScreenHandler(std::move(supervised_user_creation_screen_handler)); |
| 267 | 248 |
| 268 auto wrong_hwid_screen_handler = base::MakeUnique<WrongHWIDScreenHandler>(); | 249 AddScreenHandler(base::MakeUnique<WrongHWIDScreenHandler>()); |
| 269 wrong_hwid_screen_view_ = wrong_hwid_screen_handler.get(); | |
| 270 AddScreenHandler(std::move(wrong_hwid_screen_handler)); | |
| 271 | 250 |
| 272 auto auto_enrollment_check_screen_handler = | 251 AddScreenHandler(base::MakeUnique<AutoEnrollmentCheckScreenHandler>()); |
| 273 base::MakeUnique<AutoEnrollmentCheckScreenHandler>(); | |
| 274 auto_enrollment_check_screen_view_ = | |
| 275 auto_enrollment_check_screen_handler.get(); | |
| 276 AddScreenHandler(std::move(auto_enrollment_check_screen_handler)); | |
| 277 | 252 |
| 278 auto hid_detection_screen_handler = | 253 AddScreenHandler(base::MakeUnique<HIDDetectionScreenHandler>(core_handler_)); |
| 279 base::MakeUnique<HIDDetectionScreenHandler>(core_handler_); | |
| 280 hid_detection_view_ = hid_detection_screen_handler.get(); | |
| 281 AddScreenHandler(std::move(hid_detection_screen_handler)); | |
| 282 | 254 |
| 283 auto error_screen_handler = base::MakeUnique<ErrorScreenHandler>(); | 255 AddScreenHandler(base::MakeUnique<ErrorScreenHandler>()); |
| 284 error_screen_handler_ = error_screen_handler.get(); | 256 network_dropdown_handler_->AddObserver(GetView<ErrorScreenHandler>()); |
| 285 AddScreenHandler(std::move(error_screen_handler)); | |
| 286 network_dropdown_handler_->AddObserver(error_screen_handler_); | |
| 287 | 257 |
| 288 error_screen_.reset(new ErrorScreen(nullptr, error_screen_handler_)); | 258 error_screen_.reset(new ErrorScreen(nullptr, GetView<ErrorScreenHandler>())); |
| 289 ErrorScreen* error_screen = error_screen_.get(); | 259 ErrorScreen* error_screen = error_screen_.get(); |
| 290 | 260 |
| 291 auto enrollment_screen_handler = base::MakeUnique<EnrollmentScreenHandler>( | 261 AddScreenHandler(base::MakeUnique<EnrollmentScreenHandler>( |
| 292 network_state_informer_, error_screen); | 262 network_state_informer_, error_screen)); |
| 293 enrollment_screen_view_ = enrollment_screen_handler.get(); | |
| 294 AddScreenHandler(std::move(enrollment_screen_handler)); | |
| 295 | 263 |
| 296 auto terms_of_service_screen_handler = | 264 AddScreenHandler( |
| 297 base::MakeUnique<TermsOfServiceScreenHandler>(core_handler_); | 265 base::MakeUnique<TermsOfServiceScreenHandler>(core_handler_)); |
| 298 terms_of_service_screen_view_ = terms_of_service_screen_handler.get(); | |
| 299 AddScreenHandler(std::move(terms_of_service_screen_handler)); | |
| 300 | 266 |
| 301 auto arc_terms_of_service_screen_handler = | 267 AddScreenHandler(base::MakeUnique<ArcTermsOfServiceScreenHandler>()); |
| 302 base::MakeUnique<ArcTermsOfServiceScreenHandler>(); | |
| 303 arc_terms_of_service_screen_view_ = arc_terms_of_service_screen_handler.get(); | |
| 304 AddScreenHandler(std::move(arc_terms_of_service_screen_handler)); | |
| 305 | 268 |
| 306 auto user_image_screen_handler = base::MakeUnique<UserImageScreenHandler>(); | 269 AddScreenHandler(base::MakeUnique<UserImageScreenHandler>()); |
| 307 user_image_view_ = user_image_screen_handler.get(); | |
| 308 AddScreenHandler(std::move(user_image_screen_handler)); | |
| 309 | 270 |
| 310 auto user_board_screen_handler = base::MakeUnique<UserBoardScreenHandler>(); | 271 AddScreenHandler(base::MakeUnique<UserBoardScreenHandler>()); |
| 311 user_board_screen_handler_ = user_board_screen_handler.get(); | |
| 312 AddScreenHandler(std::move(user_board_screen_handler)); | |
| 313 | 272 |
| 314 auto gaia_screen_handler = base::MakeUnique<GaiaScreenHandler>( | 273 AddScreenHandler(base::MakeUnique<GaiaScreenHandler>( |
| 315 core_handler_, network_state_informer_); | 274 core_handler_, network_state_informer_)); |
| 316 gaia_screen_handler_ = gaia_screen_handler.get(); | |
| 317 AddScreenHandler(std::move(gaia_screen_handler)); | |
| 318 | 275 |
| 319 auto signin_screen_handler = base::MakeUnique<SigninScreenHandler>( | 276 auto signin_screen_handler = base::MakeUnique<SigninScreenHandler>( |
| 320 network_state_informer_, error_screen, core_handler_, | 277 network_state_informer_, error_screen, core_handler_, |
| 321 gaia_screen_handler_, js_calls_container.get()); | 278 GetView<GaiaScreenHandler>(), js_calls_container.get()); |
| 322 signin_screen_handler_ = signin_screen_handler.get(); | 279 signin_screen_handler_ = signin_screen_handler.get(); |
| 323 AddScreenHandler(std::move(signin_screen_handler)); | 280 AddWebUIHandler(std::move(signin_screen_handler)); |
| 324 | 281 |
| 325 auto app_launch_splash_screen_handler = | 282 AddScreenHandler(base::MakeUnique<AppLaunchSplashScreenHandler>( |
| 326 base::MakeUnique<AppLaunchSplashScreenHandler>(network_state_informer_, | 283 network_state_informer_, error_screen)); |
| 327 error_screen); | |
| 328 app_launch_splash_screen_view_ = app_launch_splash_screen_handler.get(); | |
| 329 AddScreenHandler(std::move(app_launch_splash_screen_handler)); | |
| 330 | 284 |
| 331 auto arc_kiosk_splash_screen_handler = | 285 AddScreenHandler(base::MakeUnique<ArcKioskSplashScreenHandler>()); |
| 332 base::MakeUnique<ArcKioskSplashScreenHandler>(); | |
| 333 arc_kiosk_splash_screen_view_ = arc_kiosk_splash_screen_handler.get(); | |
| 334 AddScreenHandler(std::move(arc_kiosk_splash_screen_handler)); | |
| 335 | 286 |
| 336 if (display_type_ == kOobeDisplay) { | 287 if (display_type_ == kOobeDisplay) { |
| 337 auto controller_pairing_handler = | 288 AddScreenHandler(base::MakeUnique<ControllerPairingScreenHandler>()); |
| 338 base::MakeUnique<ControllerPairingScreenHandler>(); | |
| 339 controller_pairing_screen_view_ = controller_pairing_handler.get(); | |
| 340 AddScreenHandler(std::move(controller_pairing_handler)); | |
| 341 | 289 |
| 342 auto host_pairing_handler = base::MakeUnique<HostPairingScreenHandler>(); | 290 AddScreenHandler(base::MakeUnique<HostPairingScreenHandler>()); |
| 343 host_pairing_screen_view_ = host_pairing_handler.get(); | |
| 344 AddScreenHandler(std::move(host_pairing_handler)); | |
| 345 } | 291 } |
| 346 | 292 |
| 347 auto device_disabled_screen_handler = | 293 AddScreenHandler(base::MakeUnique<DeviceDisabledScreenHandler>()); |
| 348 base::MakeUnique<DeviceDisabledScreenHandler>(); | |
| 349 device_disabled_screen_view_ = device_disabled_screen_handler.get(); | |
| 350 AddScreenHandler(std::move(device_disabled_screen_handler)); | |
| 351 | 294 |
| 352 // Initialize KioskAppMenuHandler. Note that it is NOT a screen handler. | 295 // Initialize KioskAppMenuHandler. Note that it is NOT a screen handler. |
| 353 auto kiosk_app_menu_handler = | 296 auto kiosk_app_menu_handler = |
| 354 base::MakeUnique<KioskAppMenuHandler>(network_state_informer_); | 297 base::MakeUnique<KioskAppMenuHandler>(network_state_informer_); |
| 355 kiosk_app_menu_handler_ = kiosk_app_menu_handler.get(); | 298 kiosk_app_menu_handler_ = kiosk_app_menu_handler.get(); |
| 356 web_ui->AddMessageHandler(std::move(kiosk_app_menu_handler)); | 299 web_ui->AddMessageHandler(std::move(kiosk_app_menu_handler)); |
| 357 | 300 |
| 358 base::DictionaryValue localized_strings; | 301 base::DictionaryValue localized_strings; |
| 359 GetLocalizedStrings(&localized_strings); | 302 GetLocalizedStrings(&localized_strings); |
| 360 | 303 |
| (...skipping 18 matching lines...) Expand all Loading... |
| 379 new options::UserImageSource(); | 322 new options::UserImageSource(); |
| 380 content::URLDataSource::Add(profile, user_image_source); | 323 content::URLDataSource::Add(profile, user_image_source); |
| 381 | 324 |
| 382 // TabHelper is required for OOBE webui to make webview working on it. | 325 // TabHelper is required for OOBE webui to make webview working on it. |
| 383 content::WebContents* contents = web_ui->GetWebContents(); | 326 content::WebContents* contents = web_ui->GetWebContents(); |
| 384 extensions::TabHelper::CreateForWebContents(contents); | 327 extensions::TabHelper::CreateForWebContents(contents); |
| 385 } | 328 } |
| 386 | 329 |
| 387 OobeUI::~OobeUI() { | 330 OobeUI::~OobeUI() { |
| 388 core_handler_->SetDelegate(nullptr); | 331 core_handler_->SetDelegate(nullptr); |
| 389 network_dropdown_handler_->RemoveObserver(error_screen_handler_); | 332 network_dropdown_handler_->RemoveObserver(GetView<ErrorScreenHandler>()); |
| 390 if (ash_util::IsRunningInMash()) { | 333 if (ash_util::IsRunningInMash()) { |
| 391 // TODO: Ash needs to expose screen dimming api. See | 334 // TODO: Ash needs to expose screen dimming api. See |
| 392 // http://crbug.com/646034. | 335 // http://crbug.com/646034. |
| 393 NOTIMPLEMENTED(); | 336 NOTIMPLEMENTED(); |
| 394 } | 337 } |
| 395 } | 338 } |
| 396 | 339 |
| 397 CoreOobeView* OobeUI::GetCoreOobeView() { | 340 CoreOobeView* OobeUI::GetCoreOobeView() { |
| 398 return core_handler_; | 341 return core_handler_; |
| 399 } | 342 } |
| 400 | 343 |
| 401 NetworkView* OobeUI::GetNetworkView() { | 344 NetworkView* OobeUI::GetNetworkView() { |
| 402 return network_view_; | 345 return GetView<NetworkScreenHandler>(); |
| 403 } | 346 } |
| 404 | 347 |
| 405 EulaView* OobeUI::GetEulaView() { | 348 EulaView* OobeUI::GetEulaView() { |
| 406 return eula_view_; | 349 return GetView<EulaScreenHandler>(); |
| 407 } | 350 } |
| 408 | 351 |
| 409 UpdateView* OobeUI::GetUpdateView() { | 352 UpdateView* OobeUI::GetUpdateView() { |
| 410 return update_view_; | 353 return GetView<UpdateScreenHandler>(); |
| 411 } | 354 } |
| 412 | 355 |
| 413 EnableDebuggingScreenView* OobeUI::GetEnableDebuggingScreenView() { | 356 EnableDebuggingScreenView* OobeUI::GetEnableDebuggingScreenView() { |
| 414 return debugging_screen_view_; | 357 return GetView<EnableDebuggingScreenHandler>(); |
| 415 } | 358 } |
| 416 | 359 |
| 417 EnrollmentScreenView* OobeUI::GetEnrollmentScreenView() { | 360 EnrollmentScreenView* OobeUI::GetEnrollmentScreenView() { |
| 418 return enrollment_screen_view_; | 361 return GetView<EnrollmentScreenHandler>(); |
| 419 } | 362 } |
| 420 | 363 |
| 421 ResetView* OobeUI::GetResetView() { | 364 ResetView* OobeUI::GetResetView() { |
| 422 return reset_view_; | 365 return GetView<ResetScreenHandler>(); |
| 423 } | 366 } |
| 424 | 367 |
| 425 KioskAutolaunchScreenView* OobeUI::GetKioskAutolaunchScreenView() { | 368 KioskAutolaunchScreenView* OobeUI::GetKioskAutolaunchScreenView() { |
| 426 return autolaunch_screen_view_; | 369 return GetView<KioskAutolaunchScreenHandler>(); |
| 427 } | 370 } |
| 428 | 371 |
| 429 KioskEnableScreenView* OobeUI::GetKioskEnableScreenView() { | 372 KioskEnableScreenView* OobeUI::GetKioskEnableScreenView() { |
| 430 return kiosk_enable_screen_view_; | 373 return GetView<KioskEnableScreenHandler>(); |
| 431 } | 374 } |
| 432 | 375 |
| 433 TermsOfServiceScreenView* OobeUI::GetTermsOfServiceScreenView() { | 376 TermsOfServiceScreenView* OobeUI::GetTermsOfServiceScreenView() { |
| 434 return terms_of_service_screen_view_; | 377 return GetView<TermsOfServiceScreenHandler>(); |
| 435 } | 378 } |
| 436 | 379 |
| 437 ArcTermsOfServiceScreenView* OobeUI::GetArcTermsOfServiceScreenView() { | 380 ArcTermsOfServiceScreenView* OobeUI::GetArcTermsOfServiceScreenView() { |
| 438 return arc_terms_of_service_screen_view_; | 381 return GetView<ArcTermsOfServiceScreenHandler>(); |
| 439 } | 382 } |
| 440 | 383 |
| 441 WrongHWIDScreenView* OobeUI::GetWrongHWIDScreenView() { | 384 WrongHWIDScreenView* OobeUI::GetWrongHWIDScreenView() { |
| 442 return wrong_hwid_screen_view_; | 385 return GetView<WrongHWIDScreenHandler>(); |
| 443 } | 386 } |
| 444 | 387 |
| 445 AutoEnrollmentCheckScreenView* OobeUI::GetAutoEnrollmentCheckScreenView() { | 388 AutoEnrollmentCheckScreenView* OobeUI::GetAutoEnrollmentCheckScreenView() { |
| 446 return auto_enrollment_check_screen_view_; | 389 return GetView<AutoEnrollmentCheckScreenHandler>(); |
| 447 } | 390 } |
| 448 | 391 |
| 449 HIDDetectionView* OobeUI::GetHIDDetectionView() { | 392 HIDDetectionView* OobeUI::GetHIDDetectionView() { |
| 450 return hid_detection_view_; | 393 return GetView<HIDDetectionScreenHandler>(); |
| 451 } | 394 } |
| 452 | 395 |
| 453 ControllerPairingScreenView* OobeUI::GetControllerPairingScreenView() { | 396 ControllerPairingScreenView* OobeUI::GetControllerPairingScreenView() { |
| 454 return controller_pairing_screen_view_; | 397 return GetView<ControllerPairingScreenHandler>(); |
| 455 } | 398 } |
| 456 | 399 |
| 457 HostPairingScreenView* OobeUI::GetHostPairingScreenView() { | 400 HostPairingScreenView* OobeUI::GetHostPairingScreenView() { |
| 458 return host_pairing_screen_view_; | 401 return GetView<HostPairingScreenHandler>(); |
| 459 } | 402 } |
| 460 | 403 |
| 461 DeviceDisabledScreenView* OobeUI::GetDeviceDisabledScreenView() { | 404 DeviceDisabledScreenView* OobeUI::GetDeviceDisabledScreenView() { |
| 462 return device_disabled_screen_view_; | 405 return GetView<DeviceDisabledScreenHandler>(); |
| 463 } | 406 } |
| 464 | 407 |
| 465 UserImageView* OobeUI::GetUserImageView() { | 408 UserImageView* OobeUI::GetUserImageView() { |
| 466 return user_image_view_; | 409 return GetView<UserImageScreenHandler>(); |
| 467 } | 410 } |
| 468 | 411 |
| 469 ErrorScreen* OobeUI::GetErrorScreen() { | 412 ErrorScreen* OobeUI::GetErrorScreen() { |
| 470 return error_screen_.get(); | 413 return error_screen_.get(); |
| 471 } | 414 } |
| 472 | 415 |
| 473 SupervisedUserCreationScreenHandler* | 416 SupervisedUserCreationScreenHandler* |
| 474 OobeUI::GetSupervisedUserCreationScreenView() { | 417 OobeUI::GetSupervisedUserCreationScreenView() { |
| 475 return supervised_user_creation_screen_view_; | 418 return supervised_user_creation_screen_view_; |
| 476 } | 419 } |
| 477 | 420 |
| 478 GaiaView* OobeUI::GetGaiaScreenView() { | 421 GaiaView* OobeUI::GetGaiaScreenView() { |
| 479 return gaia_screen_handler_; | 422 return GetView<GaiaScreenHandler>(); |
| 480 } | 423 } |
| 481 | 424 |
| 482 UserBoardView* OobeUI::GetUserBoardView() { | 425 UserBoardView* OobeUI::GetUserBoardView() { |
| 483 return user_board_screen_handler_; | 426 return GetView<UserBoardScreenHandler>(); |
| 484 } | 427 } |
| 485 | 428 |
| 486 void OobeUI::OnShutdownPolicyChanged(bool reboot_on_shutdown) { | 429 void OobeUI::OnShutdownPolicyChanged(bool reboot_on_shutdown) { |
| 487 core_handler_->UpdateShutdownAndRebootVisibility(reboot_on_shutdown); | 430 core_handler_->UpdateShutdownAndRebootVisibility(reboot_on_shutdown); |
| 488 } | 431 } |
| 489 | 432 |
| 490 AppLaunchSplashScreenView* OobeUI::GetAppLaunchSplashScreenView() { | 433 AppLaunchSplashScreenView* OobeUI::GetAppLaunchSplashScreenView() { |
| 491 return app_launch_splash_screen_view_; | 434 return GetView<AppLaunchSplashScreenHandler>(); |
| 492 } | 435 } |
| 493 | 436 |
| 494 ArcKioskSplashScreenView* OobeUI::GetArcKioskSplashScreenView() { | 437 ArcKioskSplashScreenView* OobeUI::GetArcKioskSplashScreenView() { |
| 495 return arc_kiosk_splash_screen_view_; | 438 return GetView<ArcKioskSplashScreenHandler>(); |
| 496 } | 439 } |
| 497 | 440 |
| 498 void OobeUI::GetLocalizedStrings(base::DictionaryValue* localized_strings) { | 441 void OobeUI::GetLocalizedStrings(base::DictionaryValue* localized_strings) { |
| 499 // Note, handlers_[0] is a GenericHandler used by the WebUI. | 442 for (BaseWebUIHandler* handler : webui_handlers_) |
| 500 for (size_t i = 0; i < handlers_.size(); ++i) { | 443 handler->GetLocalizedStrings(localized_strings); |
| 501 handlers_[i]->GetLocalizedStrings(localized_strings); | |
| 502 } | |
| 503 const std::string& app_locale = g_browser_process->GetApplicationLocale(); | 444 const std::string& app_locale = g_browser_process->GetApplicationLocale(); |
| 504 webui::SetLoadTimeDataDefaults(app_locale, localized_strings); | 445 webui::SetLoadTimeDataDefaults(app_locale, localized_strings); |
| 505 kiosk_app_menu_handler_->GetLocalizedStrings(localized_strings); | 446 kiosk_app_menu_handler_->GetLocalizedStrings(localized_strings); |
| 506 | 447 |
| 507 #if defined(GOOGLE_CHROME_BUILD) | 448 #if defined(GOOGLE_CHROME_BUILD) |
| 508 localized_strings->SetString("buildType", "chrome"); | 449 localized_strings->SetString("buildType", "chrome"); |
| 509 #else | 450 #else |
| 510 localized_strings->SetString("buildType", "chromium"); | 451 localized_strings->SetString("buildType", "chromium"); |
| 511 #endif | 452 #endif |
| 512 | 453 |
| (...skipping 11 matching lines...) Expand all Loading... |
| 524 localized_strings->SetString("highlightStrength", | 465 localized_strings->SetString("highlightStrength", |
| 525 keyboard_driven_oobe ? "strong" : "normal"); | 466 keyboard_driven_oobe ? "strong" : "normal"); |
| 526 | 467 |
| 527 bool new_kiosk_ui = KioskAppMenuHandler::EnableNewKioskUI(); | 468 bool new_kiosk_ui = KioskAppMenuHandler::EnableNewKioskUI(); |
| 528 localized_strings->SetString("newKioskUI", new_kiosk_ui ? "on" : "off"); | 469 localized_strings->SetString("newKioskUI", new_kiosk_ui ? "on" : "off"); |
| 529 oobe_ui_md_mode_ = | 470 oobe_ui_md_mode_ = |
| 530 g_browser_process->local_state()->GetBoolean(prefs::kOobeMdMode); | 471 g_browser_process->local_state()->GetBoolean(prefs::kOobeMdMode); |
| 531 localized_strings->SetString("newOobeUI", oobe_ui_md_mode_ ? "on" : "off"); | 472 localized_strings->SetString("newOobeUI", oobe_ui_md_mode_ ? "on" : "off"); |
| 532 } | 473 } |
| 533 | 474 |
| 534 void OobeUI::AddScreenHandler(std::unique_ptr<BaseScreenHandler> handler) { | 475 void OobeUI::AddWebUIHandler(std::unique_ptr<BaseWebUIHandler> handler) { |
| 535 handlers_.push_back(handler.get()); | 476 webui_handlers_.push_back(handler.get()); |
| 536 web_ui()->AddMessageHandler(std::move(handler)); | 477 web_ui()->AddMessageHandler(std::move(handler)); |
| 537 } | 478 } |
| 538 | 479 |
| 480 void OobeUI::AddScreenHandler(std::unique_ptr<BaseScreenHandler> handler) { |
| 481 webui_handlers_.push_back(handler.get()); |
| 482 screen_handlers_.push_back(handler.get()); |
| 483 web_ui()->AddMessageHandler(std::move(handler)); |
| 484 } |
| 485 |
| 539 void OobeUI::InitializeHandlers() { | 486 void OobeUI::InitializeHandlers() { |
| 540 ready_ = true; | 487 ready_ = true; |
| 541 for (size_t i = 0; i < ready_callbacks_.size(); ++i) | 488 for (size_t i = 0; i < ready_callbacks_.size(); ++i) |
| 542 ready_callbacks_[i].Run(); | 489 ready_callbacks_[i].Run(); |
| 543 ready_callbacks_.clear(); | 490 ready_callbacks_.clear(); |
| 544 | 491 |
| 545 // Notify 'initialize' for synchronously loaded screens. | 492 // Notify 'initialize' for synchronously loaded screens. |
| 546 for (size_t i = 0; i < handlers_.size(); ++i) { | 493 for (BaseWebUIHandler* handler : webui_handlers_) { |
| 547 if (handlers_[i]->async_assets_load_id().empty()) | 494 if (handler->async_assets_load_id().empty()) |
| 548 handlers_[i]->InitializeBase(); | 495 handler->InitializeBase(); |
| 549 } | 496 } |
| 550 | 497 |
| 551 // Instantiate the ShutdownPolicyHandler. | 498 // Instantiate the ShutdownPolicyHandler. |
| 552 shutdown_policy_handler_.reset( | 499 shutdown_policy_handler_.reset( |
| 553 new ShutdownPolicyHandler(CrosSettings::Get(), this)); | 500 new ShutdownPolicyHandler(CrosSettings::Get(), this)); |
| 554 | 501 |
| 555 // Trigger an initial update. | 502 // Trigger an initial update. |
| 556 shutdown_policy_handler_->NotifyDelegateWithShutdownPolicy(); | 503 shutdown_policy_handler_->NotifyDelegateWithShutdownPolicy(); |
| 557 } | 504 } |
| 558 | 505 |
| 559 void OobeUI::OnScreenAssetsLoaded(const std::string& async_assets_load_id) { | 506 void OobeUI::OnScreenAssetsLoaded(const std::string& async_assets_load_id) { |
| 560 DCHECK(!async_assets_load_id.empty()); | 507 DCHECK(!async_assets_load_id.empty()); |
| 561 | 508 |
| 562 for (size_t i = 0; i < handlers_.size(); ++i) { | 509 for (BaseWebUIHandler* handler : webui_handlers_) { |
| 563 if (handlers_[i]->async_assets_load_id() == async_assets_load_id) | 510 if (handler->async_assets_load_id() == async_assets_load_id) |
| 564 handlers_[i]->InitializeBase(); | 511 handler->InitializeBase(); |
| 565 } | 512 } |
| 566 } | 513 } |
| 567 | 514 |
| 568 bool OobeUI::IsJSReady(const base::Closure& display_is_ready_callback) { | 515 bool OobeUI::IsJSReady(const base::Closure& display_is_ready_callback) { |
| 569 if (!ready_) | 516 if (!ready_) |
| 570 ready_callbacks_.push_back(display_is_ready_callback); | 517 ready_callbacks_.push_back(display_is_ready_callback); |
| 571 return ready_; | 518 return ready_; |
| 572 } | 519 } |
| 573 | 520 |
| 574 void OobeUI::ShowOobeUI(bool show) { | 521 void OobeUI::ShowOobeUI(bool show) { |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 640 g_browser_process->local_state()->GetBoolean(prefs::kOobeMdMode)) { | 587 g_browser_process->local_state()->GetBoolean(prefs::kOobeMdMode)) { |
| 641 return; | 588 return; |
| 642 } | 589 } |
| 643 | 590 |
| 644 base::DictionaryValue localized_strings; | 591 base::DictionaryValue localized_strings; |
| 645 GetLocalizedStrings(&localized_strings); | 592 GetLocalizedStrings(&localized_strings); |
| 646 static_cast<CoreOobeView*>(core_handler_)->ReloadContent(localized_strings); | 593 static_cast<CoreOobeView*>(core_handler_)->ReloadContent(localized_strings); |
| 647 } | 594 } |
| 648 | 595 |
| 649 } // namespace chromeos | 596 } // namespace chromeos |
| OLD | NEW |