| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ |
| 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ |
| 7 #pragma once | 7 #pragma once |
| 8 | 8 |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
| 11 #include "base/memory/scoped_ptr.h" | 11 #include "base/memory/scoped_ptr.h" |
| 12 #include "chrome/browser/chromeos/login/login_html_dialog.h" | 12 #include "chrome/browser/chromeos/login/login_web_dialog.h" |
| 13 #include "ui/gfx/native_widget_types.h" | 13 #include "ui/gfx/native_widget_types.h" |
| 14 | 14 |
| 15 namespace chromeos { | 15 namespace chromeos { |
| 16 | 16 |
| 17 // Provides help content during OOBE / login. | 17 // Provides help content during OOBE / login. |
| 18 // Based on connectivity state (offline/online) shows help topic dialog | 18 // Based on connectivity state (offline/online) shows help topic dialog |
| 19 // or launches HelpApp in BWSI mode. | 19 // or launches HelpApp in BWSI mode. |
| 20 class HelpAppLauncher : public LoginHtmlDialog::Delegate, | 20 class HelpAppLauncher : public LoginWebDialog::Delegate, |
| 21 public base::RefCountedThreadSafe<HelpAppLauncher> { | 21 public base::RefCountedThreadSafe<HelpAppLauncher> { |
| 22 public: | 22 public: |
| 23 // IDs of help topics available from HelpApp. | 23 // IDs of help topics available from HelpApp. |
| 24 enum HelpTopic { | 24 enum HelpTopic { |
| 25 // Showed on basic connectivity issues. | 25 // Showed on basic connectivity issues. |
| 26 HELP_CONNECTIVITY = 188752, | 26 HELP_CONNECTIVITY = 188752, |
| 27 // Showed at EULA screen as "Learn more" about stats/crash reports. | 27 // Showed at EULA screen as "Learn more" about stats/crash reports. |
| 28 HELP_STATS_USAGE = 183078, | 28 HELP_STATS_USAGE = 183078, |
| 29 // Showed whenever there're troubles signing in (offline case). | 29 // Showed whenever there're troubles signing in (offline case). |
| 30 HELP_CANT_ACCESS_ACCOUNT_OFFLINE = 188755, | 30 HELP_CANT_ACCESS_ACCOUNT_OFFLINE = 188755, |
| 31 // Showed whenever there're troubles signing in (online case). | 31 // Showed whenever there're troubles signing in (online case). |
| 32 HELP_CANT_ACCESS_ACCOUNT = 188036, | 32 HELP_CANT_ACCESS_ACCOUNT = 188036, |
| 33 // Showed in case when account was disabled. | 33 // Showed in case when account was disabled. |
| 34 HELP_ACCOUNT_DISABLED = 188756, | 34 HELP_ACCOUNT_DISABLED = 188756, |
| 35 // Showed in case when hosted account is used. | 35 // Showed in case when hosted account is used. |
| 36 HELP_HOSTED_ACCOUNT = 1054228, | 36 HELP_HOSTED_ACCOUNT = 1054228, |
| 37 }; | 37 }; |
| 38 | 38 |
| 39 // Parent window is used to show dialog. | 39 // Parent window is used to show dialog. |
| 40 explicit HelpAppLauncher(gfx::NativeWindow parent_window); | 40 explicit HelpAppLauncher(gfx::NativeWindow parent_window); |
| 41 virtual ~HelpAppLauncher(); | 41 virtual ~HelpAppLauncher(); |
| 42 | 42 |
| 43 // Shows specified help topic. | 43 // Shows specified help topic. |
| 44 void ShowHelpTopic(HelpTopic help_topic_id); | 44 void ShowHelpTopic(HelpTopic help_topic_id); |
| 45 | 45 |
| 46 // Returns true if the dialog is currently open. | 46 // Returns true if the dialog is currently open. |
| 47 bool is_open() const { return dialog_.get() && dialog_->is_open(); } | 47 bool is_open() const { return dialog_.get() && dialog_->is_open(); } |
| 48 | 48 |
| 49 protected: | 49 protected: |
| 50 // LoginHtmlDialog::Delegate implementation: | 50 // LoginWebDialog::Delegate implementation: |
| 51 virtual void OnDialogClosed() OVERRIDE {} | 51 virtual void OnDialogClosed() OVERRIDE {} |
| 52 | 52 |
| 53 private: | 53 private: |
| 54 // Shows help topic dialog for specified GURL. | 54 // Shows help topic dialog for specified GURL. |
| 55 void ShowHelpTopicDialog(const GURL& topic_url); | 55 void ShowHelpTopicDialog(const GURL& topic_url); |
| 56 | 56 |
| 57 // Dialog used to display help like "Can't access your account". | 57 // Dialog used to display help like "Can't access your account". |
| 58 scoped_ptr<LoginHtmlDialog> dialog_; | 58 scoped_ptr<LoginWebDialog> dialog_; |
| 59 | 59 |
| 60 // Parent window which is passed to help dialog. | 60 // Parent window which is passed to help dialog. |
| 61 gfx::NativeWindow parent_window_; | 61 gfx::NativeWindow parent_window_; |
| 62 | 62 |
| 63 DISALLOW_COPY_AND_ASSIGN(HelpAppLauncher); | 63 DISALLOW_COPY_AND_ASSIGN(HelpAppLauncher); |
| 64 }; | 64 }; |
| 65 | 65 |
| 66 } // namespace chromeos | 66 } // namespace chromeos |
| 67 | 67 |
| 68 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ | 68 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_HELP_APP_LAUNCHER_H_ |
| OLD | NEW |