screen_manager_handler.cc revision c2e0dbddbe15c98d52c4786dac06cb8952a8ae6d
1// Copyright (c) 2013 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#include "chrome/browser/ui/webui/chromeos/login/screen_manager_handler.h"
6
7namespace {
8
9const char kJsApiButtonPressed[] = "buttonPressed";
10const char kJsApiContextChanged[] = "contextChanged";
11
12}  // namespace
13
14namespace chromeos {
15
16ScreenManagerHandler::ScreenManagerHandler() : delegate_(NULL) {
17}
18
19ScreenManagerHandler::~ScreenManagerHandler() {
20}
21
22void ScreenManagerHandler::SetDelegate(Delegate* delegate) {
23  delegate_ = delegate;
24}
25
26void ScreenManagerHandler::DeclareLocalizedValues(
27    LocalizedValuesBuilder* builder) {
28}
29
30void ScreenManagerHandler::Initialize() {
31}
32
33void ScreenManagerHandler::RegisterMessages() {
34  AddCallback(kJsApiButtonPressed,
35              &ScreenManagerHandler::HandleButtonPressed);
36  AddCallback(kJsApiContextChanged,
37              &ScreenManagerHandler::HandleContextChanged);
38}
39
40void ScreenManagerHandler::HandleButtonPressed(const std::string& screen_name,
41                                               const std::string& button_id) {
42  if (delegate_)
43    delegate_->OnButtonPressed(screen_name, button_id);
44}
45
46void ScreenManagerHandler::HandleContextChanged(
47    const std::string& screen_name,
48    const DictionaryValue* diff) {
49  if (delegate_)
50    delegate_->OnContextChanged(screen_name, diff);
51}
52
53}  // namespace chromeos
54