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