diff options
-rw-r--r-- | chrome/browser/options_window.h | 3 | ||||
-rw-r--r-- | chrome/browser/sync/personalization.cc | 2 | ||||
-rw-r--r-- | chrome/browser/views/options/content_page_view.cc | 145 | ||||
-rw-r--r-- | chrome/browser/views/options/content_page_view.h | 45 | ||||
-rw-r--r-- | chrome/browser/views/options/options_window_view.cc | 13 | ||||
-rw-r--r-- | chrome/browser/views/options/user_data_page_view.cc | 186 | ||||
-rw-r--r-- | chrome/browser/views/options/user_data_page_view.h | 88 | ||||
-rw-r--r-- | chrome/chrome.gyp | 2 |
8 files changed, 191 insertions, 293 deletions
diff --git a/chrome/browser/options_window.h b/chrome/browser/options_window.h index e9be16c..ad119f9 100644 --- a/chrome/browser/options_window.h +++ b/chrome/browser/options_window.h @@ -15,9 +15,6 @@ enum OptionsPage { OPTIONS_PAGE_DEFAULT = -1, OPTIONS_PAGE_GENERAL, OPTIONS_PAGE_CONTENT, -#ifdef CHROME_PERSONALIZATION - OPTIONS_PAGE_USER_DATA, -#endif OPTIONS_PAGE_ADVANCED, OPTIONS_PAGE_COUNT }; diff --git a/chrome/browser/sync/personalization.cc b/chrome/browser/sync/personalization.cc index 8e6a67c..8bd3c0d 100644 --- a/chrome/browser/sync/personalization.cc +++ b/chrome/browser/sync/personalization.cc @@ -157,7 +157,7 @@ void HandleMenuItemClick(Profile* p) { ProfileSyncService* service = p->GetProfilePersonalization()->sync_service(); DCHECK(service); if (service->IsSyncEnabledByUser()) { - ShowOptionsWindow(OPTIONS_PAGE_USER_DATA, OPTIONS_GROUP_NONE, p); + ShowOptionsWindow(OPTIONS_PAGE_CONTENT, OPTIONS_GROUP_NONE, p); } else { service->EnableForUser(); } diff --git a/chrome/browser/views/options/content_page_view.cc b/chrome/browser/views/options/content_page_view.cc index e83be63..b838e7b 100644 --- a/chrome/browser/views/options/content_page_view.cc +++ b/chrome/browser/views/options/content_page_view.cc @@ -16,6 +16,8 @@ #include "chrome/browser/browser.h" #include "chrome/browser/browser_list.h" #include "chrome/browser/browser_process.h" +#include "chrome/browser/sync/personalization_strings.h" +#include "chrome/browser/sync/sync_status_ui_helper.h" #include "chrome/browser/views/clear_browsing_data.h" #include "chrome/browser/views/importer_view.h" #include "chrome/browser/views/options/options_group_view.h" @@ -33,6 +35,15 @@ namespace { const int kPasswordSavingRadioGroup = 1; const int kFormAutofillRadioGroup = 2; + +#ifdef CHROME_PERSONALIZATION +// Background color for the status label when it's showing an error. +static const SkColor kSyncLabelErrorBgColor = SkColorSetRGB(0xff, 0x9a, 0x9a); + +static views::Background* CreateErrorBackground() { + return views::Background::CreateSolidBackground(kSyncLabelErrorBgColor); +} +#endif } // namespace ContentPageView::ContentPageView(Profile* profile) @@ -49,10 +60,29 @@ ContentPageView::ContentPageView(Profile* profile) browsing_data_group_(NULL), import_button_(NULL), clear_data_button_(NULL), +#ifdef CHROME_PERSONALIZATION + sync_group_(NULL), + sync_status_label_(NULL), + sync_action_link_(NULL), + sync_start_stop_button_(NULL), + sync_service_(NULL), +#endif OptionsPageView(profile) { +#ifdef CHROME_PERSONALIZATION + ProfilePersonalization* profile_p13n = profile->GetProfilePersonalization(); + if (profile_p13n) { + sync_service_ = profile_p13n->sync_service(); + DCHECK(sync_service_); + sync_service_->AddObserver(this); + } +#endif } ContentPageView::~ContentPageView() { +#ifdef CHROME_PERSONALIZATION + if (sync_service_) + sync_service_->RemoveObserver(this); +#endif } /////////////////////////////////////////////////////////////////////////////// @@ -102,9 +132,26 @@ void ContentPageView::ButtonPressed(views::Button* sender) { GetWindow()->GetNativeWindow(), gfx::Rect(), new ClearBrowsingDataView(profile()))->Show(); +#ifdef CHROME_PERSONALIZATION + } else if (sender == sync_start_stop_button_) { + DCHECK(sync_service_); + if (sync_service_->IsSyncEnabledByUser()) { + sync_service_->DisableForUser(); + } else { + sync_service_->EnableForUser(); + } +#endif } } +#ifdef CHROME_PERSONALIZATION +void ContentPageView::LinkActivated(views::Link* source, int event_flags) { + DCHECK_EQ(source, sync_action_link_); + DCHECK(sync_service_); + sync_service_->ShowLoginDialog(); +} +#endif + //////////////////////////////////////////////////////////////////////////////// // ContentPageView, OptionsPageView implementation: @@ -120,6 +167,16 @@ void ContentPageView::InitControlLayout() { ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id); column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, GridLayout::USE_PREF, 0, 0); + +#ifdef CHROME_PERSONALIZATION + if (sync_service_) { + layout->StartRow(0, single_column_view_set_id); + InitSyncGroup(); + layout->AddView(sync_group_); + layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); + } +#endif + layout->StartRow(0, single_column_view_set_id); InitPasswordSavingGroup(); layout->AddView(passwords_group_); @@ -168,6 +225,10 @@ void ContentPageView::NotifyPrefChanged(const std::wstring* pref_name) { // ContentsPageView, views::View overrides: void ContentPageView::Layout() { +#ifdef CHROME_PERSONALIZATION + if (is_initialized()) + UpdateSyncControls(); +#endif // We need to Layout twice - once to get the width of the contents box... View::Layout(); passwords_asktosave_radio_->SetBounds( @@ -176,10 +237,29 @@ void ContentPageView::Layout() { 0, 0, passwords_group_->GetContentsWidth(), 0); browsing_data_label_->SetBounds( 0, 0, browsing_data_group_->GetContentsWidth(), 0); +#ifdef CHROME_PERSONALIZATION + if (is_initialized()) { + sync_status_label_->SetBounds( + 0, 0, sync_group_->GetContentsWidth(), 0); + } +#endif // ... and twice to get the height of multi-line items correct. View::Layout(); } + +/////////////////////////////////////////////////////////////////////////////// +// ContentsPageView, ProfileSyncServiceObserver implementation: +#ifdef CHROME_PERSONALIZATION +void ContentPageView::OnStateChanged() { + // If the UI controls are not yet initialized, then don't do anything. This + // can happen if the Options dialog is up, but the Content tab is not yet + // clicked. + if (is_initialized()) + Layout(); +} +#endif + /////////////////////////////////////////////////////////////////////////////// // ContentPageView, private: @@ -332,3 +412,68 @@ void ContentPageView::InitBrowsingDataGroup() { contents, l10n_util::GetString(IDS_OPTIONS_BROWSING_DATA_GROUP_NAME), L"", true); } + +#ifdef CHROME_PERSONALIZATION +void ContentPageView::InitSyncGroup() { + sync_status_label_ = new views::Label; + sync_status_label_->SetMultiLine(true); + sync_status_label_->SetHorizontalAlignment(views::Label::ALIGN_LEFT); + + sync_action_link_ = new views::Link(); + sync_action_link_->set_collapse_when_hidden(true); + sync_action_link_->SetController(this); + + sync_start_stop_button_ = new views::NativeButton(this, std::wstring()); + + using views::GridLayout; + using views::ColumnSet; + + views::View* contents = new views::View; + GridLayout* layout = new GridLayout(contents); + contents->SetLayoutManager(layout); + + const int single_column_view_set_id = 0; + ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id); + column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 1, + GridLayout::USE_PREF, 0, 0); + layout->StartRow(0, single_column_view_set_id); + layout->AddView(sync_status_label_); + layout->StartRow(0, single_column_view_set_id); + layout->AddView(sync_action_link_); + layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); + layout->StartRow(0, single_column_view_set_id); + layout->AddView(sync_start_stop_button_); + + sync_group_ = new OptionsGroupView(contents, + kSyncGroupName, + std::wstring(), + true); +} + +void ContentPageView::UpdateSyncControls() { + DCHECK(sync_service_); + std::wstring status_label; + std::wstring link_label; + std::wstring button_label; + bool sync_enabled = sync_service_->IsSyncEnabledByUser(); + bool status_has_error = SyncStatusUIHelper::GetLabels(sync_service_, + &status_label, &link_label) == SyncStatusUIHelper::SYNC_ERROR; + button_label = sync_enabled ? kStopSyncButtonLabel : + sync_service_->SetupInProgress() ? UTF8ToWide(kSettingUpText) + : kStartSyncButtonLabel; + + sync_status_label_->SetText(status_label); + sync_start_stop_button_->SetEnabled(!sync_service_->WizardIsVisible()); + sync_start_stop_button_->SetLabel(button_label); + sync_action_link_->SetText(link_label); + sync_action_link_->SetVisible(!link_label.empty()); + if (status_has_error) { + sync_status_label_->set_background(CreateErrorBackground()); + sync_action_link_->set_background(CreateErrorBackground()); + } else { + sync_status_label_->set_background(NULL); + sync_action_link_->set_background(NULL); + } +} + +#endif diff --git a/chrome/browser/views/options/content_page_view.h b/chrome/browser/views/options/content_page_view.h index 006c204..5693b4f 100644 --- a/chrome/browser/views/options/content_page_view.h +++ b/chrome/browser/views/options/content_page_view.h @@ -5,13 +5,16 @@ #ifndef CHROME_BROWSER_VIEWS_OPTIONS_CONTENT_PAGE_VIEW_H_ #define CHROME_BROWSER_VIEWS_OPTIONS_CONTENT_PAGE_VIEW_H_ +#include "chrome/browser/sync/profile_sync_service.h" #include "chrome/browser/views/options/options_page_view.h" #include "chrome/common/pref_member.h" #include "views/controls/button/button.h" +#include "views/controls/link.h" #include "views/view.h" namespace views { class Checkbox; +class Label; class NativeButton; class RadioButton; } @@ -23,6 +26,10 @@ class PrefService; // ContentPageView class ContentPageView : public OptionsPageView, +#ifdef CHROME_PERSONALIZATION + public views::LinkController, + public ProfileSyncServiceObserver, +#endif public views::ButtonListener { public: explicit ContentPageView(Profile* profile); @@ -31,6 +38,14 @@ class ContentPageView : public OptionsPageView, // views::ButtonListener implementation: virtual void ButtonPressed(views::Button* sender); +#ifdef CHROME_PERSONALIZATION + // views::LinkController method. + virtual void LinkActivated(views::Link* source, int event_flags); + + // ProfileSyncServiceObserver methods. + virtual void OnStateChanged(); +#endif + protected: // OptionsPageView implementation: virtual void InitControlLayout(); @@ -40,11 +55,27 @@ class ContentPageView : public OptionsPageView, virtual void Layout(); private: +#ifdef CHROME_PERSONALIZATION + // Updates various sync controls based on the current sync state. + void UpdateSyncControls(); + + // Returns whether initialization of controls is done or not. + bool is_initialized() const { + // If initialization is already done, all the UI controls data members + // should be non-NULL. So check for one of them to determine if controls + // are already initialized or not. + return sync_group_ != NULL; + } +#endif + // Init all the dialog controls. void InitPasswordSavingGroup(); void InitFormAutofillGroup(); void InitBrowsingDataGroup(); void InitThemesGroup(); +#ifdef CHROME_PERSONALIZATION + void InitSyncGroup(); +#endif // Controls for the Password Saving group views::NativeButton* passwords_exceptions_button_; @@ -68,9 +99,23 @@ class ContentPageView : public OptionsPageView, views::NativeButton* import_button_; views::NativeButton* clear_data_button_; +#ifdef CHROME_PERSONALIZATION + // Controls for the Sync group. + OptionsGroupView* sync_group_; + views::Label* sync_status_label_; + views::Link* sync_action_link_; + views::NativeButton* sync_start_stop_button_; +#endif + BooleanPrefMember ask_to_save_passwords_; BooleanPrefMember ask_to_save_form_autofill_; +#ifdef CHROME_PERSONALIZATION + // Cached pointer to ProfileSyncService, if it exists. Kept up to date + // and NULL-ed out on destruction. + ProfileSyncService* sync_service_; +#endif + DISALLOW_COPY_AND_ASSIGN(ContentPageView); }; diff --git a/chrome/browser/views/options/options_window_view.cc b/chrome/browser/views/options/options_window_view.cc index 7554a57..f338eb7 100644 --- a/chrome/browser/views/options/options_window_view.cc +++ b/chrome/browser/views/options/options_window_view.cc @@ -11,10 +11,6 @@ #include "chrome/browser/views/options/advanced_page_view.h" #include "chrome/browser/views/options/content_page_view.h" #include "chrome/browser/views/options/general_page_view.h" -#ifdef CHROME_PERSONALIZATION -#include "chrome/browser/sync/personalization.h" -#include "chrome/browser/views/options/user_data_page_view.h" -#endif #include "chrome/common/chrome_constants.h" #include "chrome/common/pref_names.h" #include "chrome/common/pref_service.h" @@ -202,15 +198,6 @@ void OptionsWindowView::Init() { l10n_util::GetString(IDS_OPTIONS_CONTENT_TAB_LABEL), content_page, false); -#ifdef CHROME_PERSONALIZATION - if (!Personalization::IsP13NDisabled(profile_)) { - UserDataPageView* user_data_page = new UserDataPageView(profile_); - tabs_->AddTabAtIndex(tab_index++, - l10n_util::GetString(IDS_OPTIONS_USER_DATA_TAB_LABEL), - user_data_page, false); - } -#endif - AdvancedPageView* advanced_page = new AdvancedPageView(profile_); tabs_->AddTabAtIndex(tab_index++, l10n_util::GetString(IDS_OPTIONS_ADVANCED_TAB_LABEL), diff --git a/chrome/browser/views/options/user_data_page_view.cc b/chrome/browser/views/options/user_data_page_view.cc deleted file mode 100644 index cb7d4ea..0000000 --- a/chrome/browser/views/options/user_data_page_view.cc +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifdef CHROME_PERSONALIZATION - -#include "chrome/browser/views/options/user_data_page_view.h" - -#include "app/l10n_util.h" -#include "base/path_service.h" -#include "chrome/browser/browser_process.h" -#include "chrome/browser/profile.h" -#include "chrome/browser/profile_manager.h" -#include "chrome/browser/sync/auth_error_state.h" -#include "chrome/browser/sync/personalization_strings.h" -#include "chrome/browser/sync/profile_sync_service.h" -#include "chrome/browser/sync/sync_status_ui_helper.h" -#include "chrome/browser/views/clear_browsing_data.h" -#include "chrome/browser/views/importer_view.h" -#include "chrome/browser/views/options/options_group_view.h" -#include "chrome/browser/views/options/options_page_view.h" -#include "chrome/common/chrome_paths.h" -#include "chrome/common/pref_member.h" -#include "chrome/common/pref_service.h" -#include "grit/generated_resources.h" -#include "third_party/skia/include/core/SkColor.h" -#include "views/background.h" -#include "views/controls/button/native_button.h" -#include "views/controls/label.h" -#include "views/controls/link.h" -#include "views/controls/table/table_view.h" -#include "views/grid_layout.h" -#include "views/standard_layout.h" -#include "views/view.h" -#include "views/widget/widget.h" -#include "views/window/window.h" - -// Background color for the status label when it's showing an error. -static const SkColor kSyncLabelErrorBgColor = SkColorSetRGB(0xff, 0x9a, 0x9a); - -static views::Background* CreateErrorBackground() { - return views::Background::CreateSolidBackground(kSyncLabelErrorBgColor); -} - -UserDataPageView::UserDataPageView(Profile* profile) - : OptionsPageView(profile), - sync_group_(NULL), - sync_status_label_(NULL), - sync_action_link_(NULL), - sync_start_stop_button_(NULL), - sync_service_(profile->GetProfilePersonalization()->sync_service()) { - DCHECK(sync_service_); - sync_service_->AddObserver(this); -} - -UserDataPageView::~UserDataPageView() { - sync_service_->RemoveObserver(this); -} - -void UserDataPageView::ButtonPressed(views::Button* sender) { - DCHECK(sender == sync_start_stop_button_); - if (!sync_service_->IsSyncEnabledByUser()) { - // Sync has not been enabled yet. - sync_service_->EnableForUser(); - } else { - sync_service_->DisableForUser(); - } -} - -void UserDataPageView::LinkActivated(views::Link* source, int event_flags) { - DCHECK_EQ(source, sync_action_link_); - sync_service_->ShowLoginDialog(); -} - -void UserDataPageView::InitControlLayout() { - using views::GridLayout; - using views::ColumnSet; - - GridLayout* layout = new GridLayout(this); - layout->SetInsets(5, 5, 5, 5); - SetLayoutManager(layout); - - const int single_column_view_set_id = 0; - ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id); - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1, - GridLayout::USE_PREF, 0, 0); - layout->StartRow(0, single_column_view_set_id); - InitSyncGroup(); - layout->AddView(sync_group_); - layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); -} - -void UserDataPageView::NotifyPrefChanged(const std::wstring* pref_name) { -} - -void UserDataPageView::OnStateChanged() { - // If the UI controls are not yet initialized, then don't do anything. This - // can happen if the Options dialog is up, but the User Data tab is not yet - // clicked. - if (IsInitialized()) - Layout(); -} - -void UserDataPageView::HighlightGroup(OptionsGroup highlight_group) { -} - -void UserDataPageView::Layout() { - UpdateControls(); - // We need to Layout twice - once to get the width of the contents box... - View::Layout(); - int sync_group_width = sync_group_->GetContentsWidth(); - sync_status_label_->SetBounds(0, 0, sync_group_width, 0); - // ... and twice to get the height of multi-line items correct. - View::Layout(); -} - -void UserDataPageView::InitSyncGroup() { - sync_status_label_ = new views::Label; - sync_status_label_->SetMultiLine(true); - sync_status_label_->SetHorizontalAlignment(views::Label::ALIGN_LEFT); - - sync_action_link_ = new views::Link(); - sync_action_link_->set_collapse_when_hidden(true); - sync_action_link_->SetController(this); - - sync_start_stop_button_ = new views::NativeButton(this, std::wstring()); - - using views::GridLayout; - using views::ColumnSet; - - views::View* contents = new views::View; - GridLayout* layout = new GridLayout(contents); - contents->SetLayoutManager(layout); - - const int single_column_view_set_id = 0; - ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id); - column_set->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 1, - GridLayout::USE_PREF, 0, 0); - - // Currently we add the status label and the link in two rows. This is not - // the same as the mocks. If we add label and the link in two columns to make - // it look like the mocks then we can have a UI layout issue. If the label - // has text that fits in one line, the appearance is fine. But if the label - // has text with multiple lines, the appearance can be a bit detached. See - // bug 1648522 for details. - // TODO(munjal): Change the layout after we fix bug 1648522. - layout->StartRow(0, single_column_view_set_id); - layout->AddView(sync_status_label_); - layout->StartRow(0, single_column_view_set_id); - layout->AddView(sync_action_link_); - layout->AddPaddingRow(0, kRelatedControlVerticalSpacing); - layout->StartRow(0, single_column_view_set_id); - layout->AddView(sync_start_stop_button_); - - sync_group_ = new OptionsGroupView(contents, - kSyncGroupName, - std::wstring(), - true); -} - -void UserDataPageView::UpdateControls() { - std::wstring status_label; - std::wstring link_label; - std::wstring button_label; - bool sync_enabled = sync_service_->IsSyncEnabledByUser(); - bool status_has_error = SyncStatusUIHelper::GetLabels(sync_service_, - &status_label, &link_label) == SyncStatusUIHelper::SYNC_ERROR; - button_label = sync_enabled ? kStopSyncButtonLabel : - sync_service_->SetupInProgress() ? UTF8ToWide(kSettingUpText) - : kStartSyncButtonLabel; - - sync_status_label_->SetText(status_label); - sync_start_stop_button_->SetEnabled(!sync_service_->WizardIsVisible()); - sync_start_stop_button_->SetLabel(button_label); - sync_action_link_->SetText(link_label); - sync_action_link_->SetVisible(!link_label.empty()); - if (status_has_error) { - sync_status_label_->set_background(CreateErrorBackground()); - sync_action_link_->set_background(CreateErrorBackground()); - } else { - sync_status_label_->set_background(NULL); - sync_action_link_->set_background(NULL); - } -} - -#endif // CHROME_PERSONALIZATION diff --git a/chrome/browser/views/options/user_data_page_view.h b/chrome/browser/views/options/user_data_page_view.h deleted file mode 100644 index 840721a..0000000 --- a/chrome/browser/views/options/user_data_page_view.h +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifdef CHROME_PERSONALIZATION - -#ifndef CHROME_BROWSER_VIEWS_OPTIONS_USER_DATA_PAGE_VIEW_H_ -#define CHROME_BROWSER_VIEWS_OPTIONS_USER_DATA_PAGE_VIEW_H_ - -#include "chrome/browser/sync/profile_sync_service.h" -#include "chrome/browser/views/options/options_page_view.h" -#include "chrome/common/pref_member.h" -#include "views/controls/button/button.h" -#include "views/controls/link.h" -#include "views/view.h" - -namespace views { -class GroupboxView; -class Label; -class NativeButton; -} - -// TODO(idana): once the p13n module becomes public, we should get rid of the -// sync specific options dialog tab and just add a bookmark sync section to the -// existing (and newly added) "Personal Stuff" tab. - -class OptionsGroupView; - -/////////////////////////////////////////////////////////////////////////////// -// UserDataPageView - -class UserDataPageView : public OptionsPageView, - public views::ButtonListener, - public views::LinkController, - public ProfileSyncServiceObserver { - public: - explicit UserDataPageView(Profile* profile); - virtual ~UserDataPageView(); - - protected: - // views::ButtonListener implementation: - virtual void ButtonPressed(views::Button* sender); - - // views::LinkController method. - virtual void LinkActivated(views::Link* source, int event_flags); - - // OptionsPageView implementation: - virtual void InitControlLayout(); - virtual void NotifyPrefChanged(const std::wstring* pref_name); - virtual void HighlightGroup(OptionsGroup highlight_group); - - // views::View overrides: - virtual void Layout(); - - // ProfileSyncServiceObserver methods. - virtual void OnStateChanged(); - - private: - // Updates various controls based on the current sync state. - void UpdateControls(); - // Returns whether initialization of controls is done or not. - bool IsInitialized() const { - // If initialization is already done, all the UI controls data members - // should be non-NULL. So check for one of them to determine if controls - // are already initialized or not. - return sync_group_ != NULL; - } - // Helper to get status label for synced state. - std::wstring GetSyncedStateStatusLabel() const; - - void InitSyncGroup(); - - // Controls for the Sync group. - OptionsGroupView* sync_group_; - views::Label* sync_status_label_; - views::Link* sync_action_link_; - views::NativeButton* sync_start_stop_button_; - - // Cached pointer to ProfileSyncService, if it exists. Kept up to date - // and NULL-ed out on destruction. - ProfileSyncService* sync_service_; - - DISALLOW_COPY_AND_ASSIGN(UserDataPageView); -}; - -#endif // CHROME_BROWSER_VIEWS_OPTIONS_USER_DATA_PAGE_VIEW_H_ - -#endif // CHROME_PERSONALIZATION diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp index 80d4ea6..a4bda02 100644 --- a/chrome/chrome.gyp +++ b/chrome/chrome.gyp @@ -1839,8 +1839,6 @@ 'browser/views/options/passwords_exceptions_window_view.h', 'browser/views/options/passwords_page_view.cc', 'browser/views/options/passwords_page_view.h', - 'browser/views/options/user_data_page_view.cc', - 'browser/views/options/user_data_page_view.h', 'browser/views/page_info_window_view.cc', 'browser/views/panel_controller.cc', 'browser/views/panel_controller.h', |