1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_DOM_LOGIN_DISPLAY_HOST_H_ 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_DOM_LOGIN_DISPLAY_HOST_H_ 7 #pragma once 8 9 #include <string> 10 11 #include "chrome/browser/chromeos/login/base_login_display_host.h" 12 #include "ui/gfx/rect.h" 13 14 namespace gfx { 15 class Rect; 16 } // namespace gfx 17 18 namespace chromeos { 19 20 // DOM-specific implementation of the OOBE/login screen host. 21 // Uses DOMLoginDisplay as the login screen UI implementation, 22 class DOMLoginDisplayHost : public BaseLoginDisplayHost { 23 public: 24 explicit DOMLoginDisplayHost(const gfx::Rect& background_bounds); 25 virtual ~DOMLoginDisplayHost(); 26 27 // LoginDisplayHost implementation: 28 virtual LoginDisplay* CreateLoginDisplay(LoginDisplay::Delegate* delegate) 29 const OVERRIDE; 30 virtual gfx::NativeWindow GetNativeWindow() const OVERRIDE; 31 virtual void SetOobeProgress(BackgroundView::LoginStep step) OVERRIDE; 32 virtual void SetOobeProgressBarVisible(bool visible) OVERRIDE; 33 virtual void SetShutdownButtonEnabled(bool enable) OVERRIDE; 34 virtual void SetStatusAreaEnabled(bool enable) OVERRIDE; 35 virtual void SetStatusAreaVisible(bool visible) OVERRIDE; 36 virtual void ShowBackground() OVERRIDE; 37 38 private: 39 DISALLOW_COPY_AND_ASSIGN(DOMLoginDisplayHost); 40 }; 41 42 } // namespace chromeos 43 44 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_DOM_LOGIN_DISPLAY_HOST_H_ 45