Chromium Code Reviews| Index: chrome/browser/chromeos/login/lock/webui_screen_locker.h |
| diff --git a/chrome/browser/chromeos/login/lock/webui_screen_locker.h b/chrome/browser/chromeos/login/lock/webui_screen_locker.h |
| index 1d32cd49f457194d231b852037be3c3bd069fe3c..eb3bf7082e1ca8cc897980aab0c8d74af4db7de3 100644 |
| --- a/chrome/browser/chromeos/login/lock/webui_screen_locker.h |
| +++ b/chrome/browser/chromeos/login/lock/webui_screen_locker.h |
| @@ -15,7 +15,6 @@ |
| #include "base/macros.h" |
| #include "base/memory/weak_ptr.h" |
| #include "base/time/time.h" |
| -#include "chrome/browser/chromeos/login/lock/screen_locker_delegate.h" |
| #include "chrome/browser/chromeos/login/signin_screen_controller.h" |
| #include "chrome/browser/chromeos/login/signin_specifics.h" |
| #include "chrome/browser/chromeos/login/ui/lock_window.h" |
| @@ -46,12 +45,9 @@ namespace test { |
| class WebUIScreenLockerTester; |
| } |
| -// This version of ScreenLockerDelegate displays a WebUI lock screen based on |
| -// the Oobe account picker screen. |
| +// Displays a WebUI lock screen based on the Oobe account picker screen. |
| class WebUIScreenLocker : public WebUILoginView, |
| public LoginDisplay::Delegate, |
| - public ScreenLockerDelegate, |
| - public LockWindow::Observer, |
| public ash::LockStateObserver, |
| public views::WidgetObserver, |
| public PowerManagerClient::Observer, |
| @@ -61,21 +57,42 @@ class WebUIScreenLocker : public WebUILoginView, |
| public content::WebContentsObserver { |
| public: |
| explicit WebUIScreenLocker(ScreenLocker* screen_locker); |
| + ~WebUIScreenLocker() override; |
| + |
| + // Initialize the screen locker delegate. This will call ScreenLockReady when |
|
achuithb
2016/10/20 17:38:33
What screen locker delegate?
jdufault
2016/10/20 19:35:19
These comments were copied from screen_locker_dele
|
| + // done to notify ScreenLocker. |
| + void LockScreen(); |
| + |
| + // Enable/disable password input. |
| + void SetInputEnabled(bool enabled); |
| - // ScreenLockerDelegate: |
| - void LockScreen() override; |
| - void ScreenLockReady() override; |
| - void OnAuthenticate() override; |
| - void SetInputEnabled(bool enabled) override; |
| + // Disables all UI needed and shows error bubble with |message|. |
| + // If |sign_out_only| is true then all other input except "Sign Out" |
| + // button is blocked. |
| void ShowErrorMessage(int error_msg_id, |
| - HelpAppLauncher::HelpTopic help_topic_id) override; |
| - void ClearErrors() override; |
| - void AnimateAuthenticationSuccess() override; |
| - gfx::NativeWindow GetNativeWindow() const override; |
| - content::WebUI* GetAssociatedWebUI() override; |
| - void OnLockWebUIReady() override; |
| - void OnLockBackgroundDisplayed() override; |
| - void OnHeaderBarVisible() override; |
| + HelpAppLauncher::HelpTopic help_topic_id); |
| + |
| + // Close message bubble to clear error messages. |
| + void ClearErrors(); |
| + |
| + // Allows to have visual effects once unlock authentication is successful, |
| + // Must call ScreenLocker::UnlockOnLoginSuccess() once all effects are done. |
| + void AnimateAuthenticationSuccess(); |
| + |
| + // Called when webui lock screen is ready. |
| + void OnLockWebUIReady(); |
| + |
| + // Called when webui lock screen wallpaper is loaded and displayed. |
| + void OnLockBackgroundDisplayed(); |
| + |
| + // Called when the webui header bar becomes visible. |
| + void OnHeaderBarVisible(); |
| + |
| + // Returns instance of the OOBE WebUI. |
| + OobeUI* GetOobeUI(); |
| + |
| + private: |
| + friend class test::WebUIScreenLockerTester; |
| // LoginDisplay::Delegate: |
| void CancelPasswordChangedFlow() override; |
| @@ -97,9 +114,6 @@ class WebUIScreenLocker : public WebUILoginView, |
| void Signout() override; |
| bool IsUserWhitelisted(const AccountId& account_id) override; |
| - // LockWindow::Observer: |
| - void OnLockWindowReady() override; |
| - |
| // LockStateObserver: |
| void OnLockStateEvent(ash::LockStateObserver::EventType event) override; |
| @@ -127,13 +141,14 @@ class WebUIScreenLocker : public WebUILoginView, |
| void OnDisplayMetricsChanged(const display::Display& display, |
| uint32_t changed_metrics) override; |
| - // Returns instance of the OOBE WebUI. |
| - OobeUI* GetOobeUI(); |
| + // Inform the screen locker that the screen has been locked |
| + void ScreenLockReady(); |
| - private: |
| - friend class test::WebUIScreenLockerTester; |
| + // Called when the lock window is ready. |
| + void OnLockWindowReady(); |
| - ~WebUIScreenLocker() override; |
| + // Returns the native window displaying the lock screen. |
| + gfx::NativeWindow GetNativeWindow() const; |
| // Ensures that user pod is focused. |
| void FocusUserPod(); |
| @@ -141,8 +156,11 @@ class WebUIScreenLocker : public WebUILoginView, |
| // Reset user pod and ensures that user pod is focused. |
| void ResetAndFocusUserPod(); |
| + // ScreenLocker that owns this delegate. |
|
achuithb
2016/10/20 17:38:33
let's not use the word delegate here.
jdufault
2016/10/20 19:35:19
Done.
|
| + ScreenLocker* screen_locker_; |
|
achuithb
2016/10/20 17:38:33
let's do = nullptr for consistency.
jdufault
2016/10/20 19:35:19
Done.
|
| + |
| // The screen locker window. |
| - views::Widget* lock_window_ = nullptr; |
| + LockWindow* lock_window_ = nullptr; |
| // Sign-in Screen controller instance (owns login screens). |
| std::unique_ptr<SignInScreenController> signin_screen_controller_; |