Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(129)

Side by Side Diff: chrome/browser/ui/webui/options/reset_profile_settings_handler.h

Issue 533183002: Revert "Eliminate all code related to the AutomaticProfileResetter." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 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 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_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_ 5 #ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_
6 #define CHROME_BROWSER_UI_WEBUI_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_ 6 #define CHROME_BROWSER_UI_WEBUI_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
11 #include "base/memory/scoped_ptr.h" 11 #include "base/memory/scoped_ptr.h"
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #include "chrome/browser/ui/webui/options/options_ui.h" 13 #include "chrome/browser/ui/webui/options/options_ui.h"
14 14
15 namespace base { 15 namespace base {
16 class DictionaryValue; 16 class DictionaryValue;
17 class ListValue; 17 class ListValue;
18 } // namespace base 18 } // namespace base
19 19
20 class AutomaticProfileResetter;
20 class BrandcodeConfigFetcher; 21 class BrandcodeConfigFetcher;
21 class ProfileResetter; 22 class ProfileResetter;
22 class ResettableSettingsSnapshot; 23 class ResettableSettingsSnapshot;
23 24
24 namespace options { 25 namespace options {
25 26
26 // Handler for both the 'Reset Profile Settings' overlay page and also the 27 // Handler for both the 'Reset Profile Settings' overlay page and also the
27 // corresponding banner that is shown at the top of the options page. 28 // corresponding banner that is shown at the top of the options page.
28 class ResetProfileSettingsHandler 29 class ResetProfileSettingsHandler
29 : public OptionsPageUIHandler, 30 : public OptionsPageUIHandler,
30 public base::SupportsWeakPtr<ResetProfileSettingsHandler> { 31 public base::SupportsWeakPtr<ResetProfileSettingsHandler> {
31 public: 32 public:
32 ResetProfileSettingsHandler(); 33 ResetProfileSettingsHandler();
33 virtual ~ResetProfileSettingsHandler(); 34 virtual ~ResetProfileSettingsHandler();
34 35
35 // OptionsPageUIHandler implementation. 36 // OptionsPageUIHandler implementation.
36 virtual void GetLocalizedValues( 37 virtual void GetLocalizedValues(
37 base::DictionaryValue* localized_strings) OVERRIDE; 38 base::DictionaryValue* localized_strings) OVERRIDE;
38 virtual void InitializeHandler() OVERRIDE; 39 virtual void InitializeHandler() OVERRIDE;
39 virtual void InitializePage() OVERRIDE; 40 virtual void InitializePage() OVERRIDE;
41 virtual void Uninitialize() OVERRIDE;
40 42
41 // WebUIMessageHandler implementation. 43 // WebUIMessageHandler implementation.
42 virtual void RegisterMessages() OVERRIDE; 44 virtual void RegisterMessages() OVERRIDE;
43 45
44 private: 46 private:
45 // Javascript callback to start clearing data. 47 // Javascript callback to start clearing data.
46 void HandleResetProfileSettings(const base::ListValue* value); 48 void HandleResetProfileSettings(const base::ListValue* value);
47 49
48 // Closes the dialog once all requested settings has been reset. 50 // Closes the dialog once all requested settings has been reset.
49 void OnResetProfileSettingsDone(bool send_feedback); 51 void OnResetProfileSettingsDone(bool send_feedback);
50 52
51 // Called when the confirmation box appears. 53 // Called when the confirmation box appears.
52 void OnShowResetProfileDialog(const base::ListValue* value); 54 void OnShowResetProfileDialog(const base::ListValue* value);
53 55
54 // Called when the confirmation box disappears. 56 // Called when the confirmation box disappears.
55 void OnHideResetProfileDialog(const base::ListValue* value); 57 void OnHideResetProfileDialog(const base::ListValue* value);
56 58
59 // Called when the reset banner is dismissed from the WebUI.
60 void OnDismissedResetProfileSettingsBanner(const base::ListValue* args);
61
57 // Called when BrandcodeConfigFetcher completed fetching settings. 62 // Called when BrandcodeConfigFetcher completed fetching settings.
58 void OnSettingsFetched(); 63 void OnSettingsFetched();
59 64
60 // Resets profile settings to default values. |send_settings| is true if user 65 // Resets profile settings to default values. |send_settings| is true if user
61 // gave his consent to upload broken settings to Google for analysis. 66 // gave his consent to upload broken settings to Google for analysis.
62 void ResetProfile(bool send_settings); 67 void ResetProfile(bool send_settings);
63 68
64 // Sets new values for the feedback area. 69 // Sets new values for the feedback area.
65 void UpdateFeedbackUI(); 70 void UpdateFeedbackUI();
66 71
72 // Destroyed with the Profile, thus it should outlive us. This will be NULL if
73 // the underlying profile is off-the-record (e.g. in Guest mode on Chrome OS).
74 AutomaticProfileResetter* automatic_profile_resetter_;
75
76 // Records whether or not the Profile Reset confirmation dialog was opened at
77 // least once during the lifetime of the settings page.
78 bool has_shown_confirmation_dialog_;
79
67 scoped_ptr<ProfileResetter> resetter_; 80 scoped_ptr<ProfileResetter> resetter_;
68 81
69 scoped_ptr<BrandcodeConfigFetcher> config_fetcher_; 82 scoped_ptr<BrandcodeConfigFetcher> config_fetcher_;
70 83
71 // Snapshot of settings before profile was reseted. 84 // Snapshot of settings before profile was reseted.
72 scoped_ptr<ResettableSettingsSnapshot> setting_snapshot_; 85 scoped_ptr<ResettableSettingsSnapshot> setting_snapshot_;
73 86
74 // Contains Chrome brand code; empty for organic Chrome. 87 // Contains Chrome brand code; empty for organic Chrome.
75 std::string brandcode_; 88 std::string brandcode_;
76 89
77 DISALLOW_COPY_AND_ASSIGN(ResetProfileSettingsHandler); 90 DISALLOW_COPY_AND_ASSIGN(ResetProfileSettingsHandler);
78 }; 91 };
79 92
80 } // namespace options 93 } // namespace options
81 94
82 #endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_ 95 #endif // CHROME_BROWSER_UI_WEBUI_OPTIONS_RESET_PROFILE_SETTINGS_HANDLER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698