| Index: chrome/browser/chromeos/login/screens/controller_pairing_screen_actor.h
|
| diff --git a/chrome/browser/chromeos/login/screens/controller_pairing_screen_actor.h b/chrome/browser/chromeos/login/screens/controller_pairing_screen_actor.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b5d51db61402541518e70984bc3694c03ab614b4
|
| --- /dev/null
|
| +++ b/chrome/browser/chromeos/login/screens/controller_pairing_screen_actor.h
|
| @@ -0,0 +1,83 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_CONTROLLER_PAIRING_SCREEN_ACTOR_H_
|
| +#define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_CONTROLLER_PAIRING_SCREEN_ACTOR_H_
|
| +
|
| +#include <string>
|
| +
|
| +#include "base/macros.h"
|
| +
|
| +namespace base {
|
| +class DictionaryValue;
|
| +}
|
| +
|
| +namespace content {
|
| +class BrowserContext;
|
| +}
|
| +
|
| +namespace chromeos {
|
| +
|
| +namespace controller_pairing {
|
| +
|
| +// Context keys.
|
| +extern const char kContextKeyPage[];
|
| +extern const char kContextKeyControlsDisabled[];
|
| +extern const char kContextKeyDevices[];
|
| +extern const char kContextKeyConfirmationCode[];
|
| +extern const char kContextKeySelectedDevice[];
|
| +extern const char kContextKeyAccountId[];
|
| +
|
| +// Pages names.
|
| +extern const char kPageDevicesDiscovery[];
|
| +extern const char kPageDeviceSelect[];
|
| +extern const char kPageDeviceNotFound[];
|
| +extern const char kPageEstablishingConnection[];
|
| +extern const char kPageEstablishingConnectionError[];
|
| +extern const char kPageCodeConfirmation[];
|
| +extern const char kPageHostUpdate[];
|
| +extern const char kPageHostConnectionLost[];
|
| +extern const char kPageEnrlollmentIntroduction[];
|
| +extern const char kPageAuthentication[];
|
| +extern const char kPageHostEnrollment[];
|
| +extern const char kPageHostEnrollmentError[];
|
| +extern const char kPagePairingDone[];
|
| +
|
| +// Actions names.
|
| +extern const char kActionChooseDevice[];
|
| +extern const char kActionRepeatDiscovery[];
|
| +extern const char kActionAcceptCode[];
|
| +extern const char kActionRejectCode[];
|
| +extern const char kActionProceedToAuthentication[];
|
| +extern const char kActionEnroll[];
|
| +extern const char kActionStartSession[];
|
| +
|
| +} // namespace conroller_pairing
|
| +
|
| +class ControllerPairingScreenActor {
|
| + public:
|
| + class Delegate {
|
| + public:
|
| + virtual ~Delegate() {}
|
| + virtual void OnActorDestroyed(ControllerPairingScreenActor* actor) = 0;
|
| + virtual void OnScreenContextChanged(const base::DictionaryValue& diff) = 0;
|
| + virtual void OnButtonClicked(const std::string& action) = 0;
|
| + };
|
| +
|
| + ControllerPairingScreenActor();
|
| + virtual ~ControllerPairingScreenActor();
|
| +
|
| + virtual void Show() = 0;
|
| + virtual void Hide() = 0;
|
| + virtual void SetDelegate(Delegate* delegate) = 0;
|
| + virtual void OnContextChanged(const base::DictionaryValue& diff) = 0;
|
| + virtual content::BrowserContext* GetBrowserContext() = 0;
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(ControllerPairingScreenActor);
|
| +};
|
| +
|
| +} // namespace chromeos
|
| +
|
| +#endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_CONTROLLER_PAIRING_SCREEN_ACTOR_H_
|
|
|