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 573 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
584 | 584 |
585 | 585 |
586 void OobeUI::AddObserver(Observer* observer) { | 586 void OobeUI::AddObserver(Observer* observer) { |
587 observer_list_.AddObserver(observer); | 587 observer_list_.AddObserver(observer); |
588 } | 588 } |
589 | 589 |
590 void OobeUI::RemoveObserver(Observer* observer) { | 590 void OobeUI::RemoveObserver(Observer* observer) { |
591 observer_list_.RemoveObserver(observer); | 591 observer_list_.RemoveObserver(observer); |
592 } | 592 } |
593 | 593 |
594 void OobeUI::OnCurrentScreenChanged(const std::string& screen) { | 594 void OobeUI::OnCurrentScreenChanged(OobeScreen new_screen) { |
595 previous_screen_ = current_screen_; | 595 previous_screen_ = current_screen_; |
596 OobeScreen new_screen = GetOobeScreenFromName(screen); | |
597 | 596 |
598 const bool should_dim = | 597 const bool should_dim = |
599 std::find(std::begin(kDimOverlayScreenIds), | 598 std::find(std::begin(kDimOverlayScreenIds), |
600 std::end(kDimOverlayScreenIds), | 599 std::end(kDimOverlayScreenIds), |
601 new_screen) != std::end(kDimOverlayScreenIds); | 600 new_screen) != std::end(kDimOverlayScreenIds); |
602 if (!chrome::IsRunningInMash()) { | 601 if (!chrome::IsRunningInMash()) { |
603 if (!screen_dimmer_) { | 602 if (!screen_dimmer_) { |
604 screen_dimmer_ = base::MakeUnique<ash::ScreenDimmer>( | 603 screen_dimmer_ = base::MakeUnique<ash::ScreenDimmer>( |
605 ash::ScreenDimmer::Container::LOCK_SCREEN); | 604 ash::ScreenDimmer::Container::LOCK_SCREEN); |
606 } | 605 } |
607 screen_dimmer_->set_at_bottom(true); | 606 screen_dimmer_->set_at_bottom(true); |
608 screen_dimmer_->SetDimming(should_dim); | 607 screen_dimmer_->SetDimming(should_dim); |
609 } else { | 608 } else { |
610 // TODO: Ash needs to expose screen dimming api. See | 609 // TODO: Ash needs to expose screen dimming api. See |
611 // http://crbug.com/646034. | 610 // http://crbug.com/646034. |
612 NOTIMPLEMENTED(); | 611 NOTIMPLEMENTED(); |
613 } | 612 } |
614 | 613 |
615 current_screen_ = new_screen; | 614 current_screen_ = new_screen; |
616 for (Observer& observer : observer_list_) | 615 for (Observer& observer : observer_list_) |
617 observer.OnCurrentScreenChanged(current_screen_, new_screen); | 616 observer.OnCurrentScreenChanged(current_screen_, new_screen); |
618 } | 617 } |
619 | 618 |
620 } // namespace chromeos | 619 } // namespace chromeos |
OLD | NEW |