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.
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_LOCK_WINDOW_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_LOCK_WINDOW_H_
8 #include "base/basictypes.h"
16 // This is the interface which lock windows used for the WebUI screen locker
20 // This class provides an interface for the lock window to notify an observer
24 // This method will be called when the lock window has finished all
26 virtual void OnLockWindowReady() = 0;
31 // Attempt to grab inputs on the webview, the actual view displaying the lock
33 virtual void Grab() = 0;
35 // Returns the actual widget for the lock window.
36 virtual views::Widget* GetWidget() = 0;
38 // Sets the observer class which is notified on lock window events.
39 void set_observer(Observer* observer) {
43 // Creates an instance of the platform specific lock window.
44 static LockWindow* Create();
47 // The observer's OnLockWindowReady method will be called when the lock
48 // window has finished all initialization.
51 DISALLOW_COPY_AND_ASSIGN(LockWindow);
54 } // namespace chromeos
56 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_LOCK_WINDOW_H_