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

Side by Side Diff: chrome/browser/gtk/options/content_page_gtk.h

Issue 579020: linux: Implement the new AutoFill section of the Options dialog. (Closed)
Patch Set: fix for mac side Created 10 years, 10 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 (c) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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_GTK_OPTIONS_CONTENT_PAGE_GTK_H_ 5 #ifndef CHROME_BROWSER_GTK_OPTIONS_CONTENT_PAGE_GTK_H_
6 #define CHROME_BROWSER_GTK_OPTIONS_CONTENT_PAGE_GTK_H_ 6 #define CHROME_BROWSER_GTK_OPTIONS_CONTENT_PAGE_GTK_H_
7 7
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 9
10 #include "chrome/browser/autofill/personal_data_manager.h"
10 #include "chrome/browser/options_page_base.h" 11 #include "chrome/browser/options_page_base.h"
11 #include "chrome/browser/profile.h" 12 #include "chrome/browser/profile.h"
12 #include "chrome/browser/sync/profile_sync_service.h" 13 #include "chrome/browser/sync/profile_sync_service.h"
13 #include "chrome/common/pref_member.h" 14 #include "chrome/common/pref_member.h"
14 15
15 class ContentPageGtk : public OptionsPageBase, 16 class ContentPageGtk : public OptionsPageBase,
16 public ProfileSyncServiceObserver { 17 public ProfileSyncServiceObserver,
18 public PersonalDataManager::Observer {
17 public: 19 public:
18 explicit ContentPageGtk(Profile* profile); 20 explicit ContentPageGtk(Profile* profile);
19 ~ContentPageGtk(); 21 ~ContentPageGtk();
20 22
21 GtkWidget* get_page_widget() const { 23 GtkWidget* get_page_widget() const {
22 return page_; 24 return page_;
23 } 25 }
24 26
25 // ProfileSyncServiceObserver method. 27 // ProfileSyncServiceObserver method.
26 virtual void OnStateChanged(); 28 virtual void OnStateChanged();
27 29
28 private: 30 private:
29 // Updates various sync controls based on the current sync state. 31 // Updates various sync controls based on the current sync state.
30 void UpdateSyncControls(); 32 void UpdateSyncControls();
31 33
32 // Overridden from OptionsPageBase. 34 // Overridden from OptionsPageBase.
33 virtual void NotifyPrefChanged(const std::wstring* pref_name); 35 virtual void NotifyPrefChanged(const std::wstring* pref_name);
34 36
35 // Overridden from OptionsPageBase. 37 // Overridden from OptionsPageBase.
36 virtual void Observe(NotificationType type, 38 virtual void Observe(NotificationType type,
37 const NotificationSource& source, 39 const NotificationSource& source,
38 const NotificationDetails& details); 40 const NotificationDetails& details);
39 41
42 // Overriden from PersonalDataManager::Observer.
43 virtual void OnPersonalDataLoaded();
44
40 // Update content area after a theme changed. 45 // Update content area after a theme changed.
41 void ObserveThemeChanged(); 46 void ObserveThemeChanged();
42 47
43 // Initialize the option group widgets, return their container. 48 // Initialize the option group widgets, return their container.
44 GtkWidget* InitPasswordSavingGroup(); 49 GtkWidget* InitPasswordSavingGroup();
45 GtkWidget* InitFormAutofillGroup(); 50 GtkWidget* InitFormAutofillGroup();
46 GtkWidget* InitBrowsingDataGroup(); 51 GtkWidget* InitBrowsingDataGroup();
47 GtkWidget* InitThemesGroup(); 52 GtkWidget* InitThemesGroup();
48 GtkWidget* InitSyncGroup(); 53 GtkWidget* InitSyncGroup();
49 54
55 // Callback for autofill button.
56 static void OnAutoFillButtonClicked(GtkButton* widget, ContentPageGtk* page);
57
50 // Callback for import button. 58 // Callback for import button.
51 static void OnImportButtonClicked(GtkButton* widget, ContentPageGtk* page); 59 static void OnImportButtonClicked(GtkButton* widget, ContentPageGtk* page);
52 60
53 // Callback for the GTK theme button. 61 // Callback for the GTK theme button.
54 static void OnGtkThemeButtonClicked(GtkButton* widget, 62 static void OnGtkThemeButtonClicked(GtkButton* widget,
55 ContentPageGtk* page); 63 ContentPageGtk* page);
56 64
57 // Callback for reset default theme button. 65 // Callback for reset default theme button.
58 static void OnResetDefaultThemeButtonClicked(GtkButton* widget, 66 static void OnResetDefaultThemeButtonClicked(GtkButton* widget,
59 ContentPageGtk* page); 67 ContentPageGtk* page);
(...skipping 29 matching lines...) Expand all
89 // Callback for stop sync dialog. 97 // Callback for stop sync dialog.
90 static void OnStopSyncDialogResponse(GtkWidget* widget, 98 static void OnStopSyncDialogResponse(GtkWidget* widget,
91 int response, 99 int response,
92 ContentPageGtk* page); 100 ContentPageGtk* page);
93 101
94 // Widgets for the Password saving group. 102 // Widgets for the Password saving group.
95 GtkWidget* passwords_asktosave_radio_; 103 GtkWidget* passwords_asktosave_radio_;
96 GtkWidget* passwords_neversave_radio_; 104 GtkWidget* passwords_neversave_radio_;
97 105
98 // Widgets for the Form Autofill group. 106 // Widgets for the Form Autofill group.
99 GtkWidget* form_autofill_asktosave_radio_; 107 GtkWidget* form_autofill_enable_radio_;
100 GtkWidget* form_autofill_neversave_radio_; 108 GtkWidget* form_autofill_disable_radio_;
101 109
102 // Widgets for the Appearance group. 110 // Widgets for the Appearance group.
103 GtkWidget* system_title_bar_show_radio_; 111 GtkWidget* system_title_bar_show_radio_;
104 GtkWidget* system_title_bar_hide_radio_; 112 GtkWidget* system_title_bar_hide_radio_;
105 GtkWidget* themes_reset_button_; 113 GtkWidget* themes_reset_button_;
106 #if defined(TOOLKIT_GTK) 114 #if defined(TOOLKIT_GTK)
107 GtkWidget* gtk_theme_button_; 115 GtkWidget* gtk_theme_button_;
108 #endif 116 #endif
109 117
110 // Widgets for the Sync group. 118 // Widgets for the Sync group.
111 GtkWidget* sync_status_label_background_; 119 GtkWidget* sync_status_label_background_;
112 GtkWidget* sync_status_label_; 120 GtkWidget* sync_status_label_;
113 GtkWidget* sync_action_link_background_; 121 GtkWidget* sync_action_link_background_;
114 GtkWidget* sync_action_link_; 122 GtkWidget* sync_action_link_;
115 GtkWidget* sync_start_stop_button_; 123 GtkWidget* sync_start_stop_button_;
116 124
117 // The parent GtkTable widget 125 // The parent GtkTable widget
118 GtkWidget* page_; 126 GtkWidget* page_;
119 127
120 // Pref members. 128 // Pref members.
121 BooleanPrefMember ask_to_save_passwords_; 129 BooleanPrefMember ask_to_save_passwords_;
122 BooleanPrefMember ask_to_save_form_autofill_; 130 BooleanPrefMember enable_form_autofill_;
123 BooleanPrefMember use_custom_chrome_frame_; 131 BooleanPrefMember use_custom_chrome_frame_;
124 132
125 // Flag to ignore gtk callbacks while we are loading prefs, to avoid 133 // Flag to ignore gtk callbacks while we are loading prefs, to avoid
126 // then turning around and saving them again. 134 // then turning around and saving them again.
127 bool initializing_; 135 bool initializing_;
128 136
129 NotificationRegistrar registrar_; 137 NotificationRegistrar registrar_;
130 138
131 // Cached pointer to ProfileSyncService, if it exists. Kept up to date 139 // Cached pointer to ProfileSyncService, if it exists. Kept up to date
132 // and NULL-ed out on destruction. 140 // and NULL-ed out on destruction.
133 ProfileSyncService* sync_service_; 141 ProfileSyncService* sync_service_;
134 142
143 // The personal data manager, used to save and load personal data to/from the
144 // web database. This can be NULL.
145 PersonalDataManager* personal_data_;
146
135 DISALLOW_COPY_AND_ASSIGN(ContentPageGtk); 147 DISALLOW_COPY_AND_ASSIGN(ContentPageGtk);
136 }; 148 };
137 149
138 #endif // CHROME_BROWSER_GTK_OPTIONS_CONTENT_PAGE_GTK_H_ 150 #endif // CHROME_BROWSER_GTK_OPTIONS_CONTENT_PAGE_GTK_H_
OLDNEW
« no previous file with comments | « chrome/browser/autofill/autofill_dialog_gtk.cc ('k') | chrome/browser/gtk/options/content_page_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698