| OLD | NEW | 
|   1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |   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 |   2 // Use of this source code is governed by a BSD-style license that can be | 
|   3 // found in the LICENSE file. |   3 // found in the LICENSE file. | 
|   4  |   4  | 
|   5 #ifndef CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ |   5 #ifndef CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ | 
|   6 #define CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ |   6 #define CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ | 
|   7  |   7  | 
|   8 #include "base/prefs/public/pref_observer.h" |  | 
|   9 #include "chrome/browser/api/prefs/pref_member.h" |   8 #include "chrome/browser/api/prefs/pref_member.h" | 
|  10 #include "content/public/browser/notification_observer.h" |   9 #include "content/public/browser/notification_observer.h" | 
|  11 #include "content/public/browser/notification_registrar.h" |  10 #include "content/public/browser/notification_registrar.h" | 
|  12 #include "content/public/browser/web_ui_message_handler.h" |  11 #include "content/public/browser/web_ui_message_handler.h" | 
|  13  |  12  | 
|  14 class Profile; |  13 class Profile; | 
|  15  |  14  | 
|  16 // The NTP login handler currently simply displays the current logged in |  15 // The NTP login handler currently simply displays the current logged in | 
|  17 // username at the top of the NTP (and update itself when that changes). |  16 // username at the top of the NTP (and update itself when that changes). | 
|  18 // In the future it may expand to allow users to login from the NTP. |  17 // In the future it may expand to allow users to login from the NTP. | 
|  19 class NTPLoginHandler : public content::WebUIMessageHandler, |  18 class NTPLoginHandler : public content::WebUIMessageHandler, | 
|  20                         public content::NotificationObserver, |  19                         public content::NotificationObserver { | 
|  21                         public PrefObserver { |  | 
|  22  public: |  20  public: | 
|  23   NTPLoginHandler(); |  21   NTPLoginHandler(); | 
|  24   virtual ~NTPLoginHandler(); |  22   virtual ~NTPLoginHandler(); | 
|  25  |  23  | 
|  26   // WebUIMessageHandler interface |  24   // WebUIMessageHandler interface | 
|  27   virtual void RegisterMessages() OVERRIDE; |  25   virtual void RegisterMessages() OVERRIDE; | 
|  28  |  26  | 
|  29   // content::NotificationObserver interface |  27   // content::NotificationObserver interface | 
|  30   virtual void Observe(int type, |  28   virtual void Observe(int type, | 
|  31                        const content::NotificationSource& source, |  29                        const content::NotificationSource& source, | 
|  32                        const content::NotificationDetails& details) OVERRIDE; |  30                        const content::NotificationDetails& details) OVERRIDE; | 
|  33  |  31  | 
|  34   // PrefObserver interface |  | 
|  35   virtual void OnPreferenceChanged(PrefServiceBase* service, |  | 
|  36                                    const std::string& pref_name) OVERRIDE; |  | 
|  37  |  | 
|  38   // Returns true if the login handler should be shown in a new tab page |  32   // Returns true if the login handler should be shown in a new tab page | 
|  39   // for the given |profile|. |profile| must not be NULL. |  33   // for the given |profile|. |profile| must not be NULL. | 
|  40   static bool ShouldShow(Profile* profile); |  34   static bool ShouldShow(Profile* profile); | 
|  41  |  35  | 
|  42   // Registers values (strings etc.) for the page. |  36   // Registers values (strings etc.) for the page. | 
|  43   static void GetLocalizedValues(Profile* profile, DictionaryValue* values); |  37   static void GetLocalizedValues(Profile* profile, DictionaryValue* values); | 
|  44  |  38  | 
|  45  private: |  39  private: | 
|  46   // User actions while on the NTP when clicking on or viewing the sync promo. |  40   // User actions while on the NTP when clicking on or viewing the sync promo. | 
|  47   enum NTPSignInPromoBuckets { |  41   enum NTPSignInPromoBuckets { | 
| (...skipping 24 matching lines...) Expand all  Loading... | 
|  72   void HandleShowAdvancedLoginUI(const ListValue* args); |  66   void HandleShowAdvancedLoginUI(const ListValue* args); | 
|  73  |  67  | 
|  74   // Internal helper method |  68   // Internal helper method | 
|  75   void UpdateLogin(); |  69   void UpdateLogin(); | 
|  76  |  70  | 
|  77   StringPrefMember username_pref_; |  71   StringPrefMember username_pref_; | 
|  78   content::NotificationRegistrar registrar_; |  72   content::NotificationRegistrar registrar_; | 
|  79 }; |  73 }; | 
|  80  |  74  | 
|  81 #endif  // CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ |  75 #endif  // CHROME_BROWSER_UI_WEBUI_NTP_NTP_LOGIN_HANDLER_H_ | 
| OLD | NEW |