Disable view source for Developer Tools.
[chromium-blink-merge.git] / chrome / browser / ui / webui / signin / inline_login_handler.h
blobb3650fb6a195efc8111bdad7a44e2a9ce3cc04e6
1 // Copyright 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.
5 #ifndef CHROME_BROWSER_UI_WEBUI_SIGNIN_INLINE_LOGIN_HANDLER_H_
6 #define CHROME_BROWSER_UI_WEBUI_SIGNIN_INLINE_LOGIN_HANDLER_H_
8 #include "content/public/browser/web_ui_message_handler.h"
10 // The base class handler for the inline login WebUI.
11 class InlineLoginHandler : public content::WebUIMessageHandler {
12 public:
13 InlineLoginHandler();
14 virtual ~InlineLoginHandler();
16 // content::WebUIMessageHandler overrides:
17 virtual void RegisterMessages() OVERRIDE;
19 protected:
20 // Enum for gaia auth mode, must match AuthMode defined in
21 // chrome/browser/resources/gaia_auth_host/gaia_auth_host.js.
22 enum AuthMode {
23 kDefaultAuthMode = 0,
24 kOfflineAuthMode = 1,
25 kInlineAuthMode = 2
28 private:
29 // JS callback to initialize the gaia auth extension. It calls
30 // |SetExtraInitParams| to set extra init params.
31 void HandleInitializeMessage(const base::ListValue* args);
32 // JS callback to complete login. It calls |CompleteLogin| to do the real
33 // work.
34 void HandleCompleteLoginMessage(const base::ListValue* args);
36 virtual void SetExtraInitParams(base::DictionaryValue& params) {}
37 virtual void CompleteLogin(const base::ListValue* args) = 0;
39 DISALLOW_COPY_AND_ASSIGN(InlineLoginHandler);
42 #endif // CHROME_BROWSER_UI_WEBUI_SIGNIN_INLINE_LOGIN_HANDLER_H_