Commit 7431d0b9 authored by Moe Ahmadi's avatar Moe Ahmadi Committed by Commit Bot

Moves PrefObserverDelegate to components/prefs/ios

Allows iOS code in components/, e.g., AutofillManager, to use the class.

Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Ie43f72dc09bdce3e4165da9ad9700b79d83f6f5e
Reviewed-on: https://chromium-review.googlesource.com/1011102Reviewed-by: default avatarDominic Battré <battre@chromium.org>
Reviewed-by: default avatarPeter Lee <pkl@chromium.org>
Commit-Queue: Moe Ahmadi <mahmadi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550669}
parent c9d9f5f1
# Copyright 2018 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.
source_set("ios") {
configs += [ "//build/config/compiler:enable_arc" ]
sources = [
"pref_observer_bridge.h",
"pref_observer_bridge.mm",
]
deps = [
"//base",
"//components/prefs",
]
}
// Copyright 2012 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.
#ifndef COMPONENTS_PREFS_IOS_PREF_OBSERVER_BRIDGE_H_
#define COMPONENTS_PREFS_IOS_PREF_OBSERVER_BRIDGE_H_
#import <Foundation/Foundation.h>
#include <string>
class PrefChangeRegistrar;
@protocol PrefObserverDelegate
- (void)onPreferenceChanged:(const std::string&)preferenceName;
@end
class PrefObserverBridge {
public:
explicit PrefObserverBridge(id<PrefObserverDelegate> delegate);
virtual ~PrefObserverBridge();
virtual void ObserveChangesForPreference(const std::string& pref_name,
PrefChangeRegistrar* registrar);
private:
virtual void OnPreferenceChanged(const std::string& pref_name);
__weak id<PrefObserverDelegate> delegate_ = nil;
};
#endif // COMPONENTS_PREFS_IOS_PREF_OBSERVER_BRIDGE_H_
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "base/bind.h"
#include "components/prefs/pref_change_registrar.h"
......@@ -12,16 +12,14 @@
#endif
PrefObserverBridge::PrefObserverBridge(id<PrefObserverDelegate> delegate)
: delegate_(delegate) {
}
: delegate_(delegate) {}
PrefObserverBridge::~PrefObserverBridge() {
}
PrefObserverBridge::~PrefObserverBridge() {}
void PrefObserverBridge::ObserveChangesForPreference(
const std::string& pref_name,
PrefChangeRegistrar* registrar) {
PrefChangeRegistrar::NamedChangeCallback callback = base::Bind(
PrefChangeRegistrar::NamedChangeCallback callback = base::BindRepeating(
&PrefObserverBridge::OnPreferenceChanged, base::Unretained(this));
registrar->Add(pref_name.c_str(), callback);
}
......
......@@ -143,6 +143,7 @@ source_set("app_internal") {
"//components/password_manager/core/common",
"//components/payments/core",
"//components/prefs",
"//components/prefs/ios",
"//components/proxy_config",
"//components/signin/core/browser",
"//components/suggestions",
......@@ -180,7 +181,6 @@ source_set("app_internal") {
"//ios/chrome/browser/passwords",
"//ios/chrome/browser/payments",
"//ios/chrome/browser/payments:constants",
"//ios/chrome/browser/prefs",
"//ios/chrome/browser/reading_list",
"//ios/chrome/browser/search_engines",
"//ios/chrome/browser/share_extension",
......
......@@ -35,6 +35,7 @@
#include "components/ntp_snippets/content_suggestions_service.h"
#include "components/password_manager/core/common/password_manager_features.h"
#include "components/payments/core/features.h"
#include "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/signin/core/browser/signin_manager.h"
#include "components/url_formatter/url_formatter.h"
......@@ -92,7 +93,6 @@
#include "ios/chrome/browser/payments/ios_payment_instrument_launcher_factory.h"
#import "ios/chrome/browser/payments/payment_request_constants.h"
#include "ios/chrome/browser/pref_names.h"
#include "ios/chrome/browser/prefs/pref_observer_bridge.h"
#import "ios/chrome/browser/reading_list/reading_list_download_service.h"
#import "ios/chrome/browser/reading_list/reading_list_download_service_factory.h"
#include "ios/chrome/browser/search_engines/search_engines_util.h"
......
......@@ -12,8 +12,8 @@ source_set("device_sharing") {
"//base",
"//components/handoff",
"//components/prefs",
"//components/prefs/ios",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/prefs",
"//net",
"//url",
]
......
......@@ -8,10 +8,10 @@
#import "components/handoff/handoff_manager.h"
#include "components/handoff/pref_names_ios.h"
#include "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/prefs/pref_service.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/prefs/pref_observer_bridge.h"
#include "url/gurl.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
......
......@@ -10,12 +10,12 @@ source_set("prefs") {
"ios_chrome_pref_service_factory.cc",
"ios_chrome_pref_service_factory.h",
"pref_observer_bridge.h",
"pref_observer_bridge.mm",
]
deps = [
"//base",
"//components/content_settings/core/browser",
"//components/prefs",
"//components/prefs/ios",
"//components/proxy_config",
"//components/search_engines",
"//components/sync_preferences",
......
......@@ -5,28 +5,6 @@
#ifndef IOS_CHROME_BROWSER_PREFS_PREF_OBSERVER_BRIDGE_H_
#define IOS_CHROME_BROWSER_PREFS_PREF_OBSERVER_BRIDGE_H_
#import <Foundation/Foundation.h>
#include <string>
class PrefChangeRegistrar;
@protocol PrefObserverDelegate
- (void)onPreferenceChanged:(const std::string&)preferenceName;
@end
class PrefObserverBridge {
public:
explicit PrefObserverBridge(id<PrefObserverDelegate> delegate);
virtual ~PrefObserverBridge();
virtual void ObserveChangesForPreference(const std::string& pref_name,
PrefChangeRegistrar* registrar);
private:
virtual void OnPreferenceChanged(const std::string& pref_name);
__weak id<PrefObserverDelegate> delegate_ = nil;
};
#import "components/prefs/ios/pref_observer_bridge.h"
#endif // IOS_CHROME_BROWSER_PREFS_PREF_OBSERVER_BRIDGE_H_
......@@ -19,13 +19,13 @@ source_set("prerender") {
"//components/keyed_service/core",
"//components/keyed_service/ios",
"//components/prefs",
"//components/prefs/ios",
"//components/signin/ios/browser",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/geolocation:geolocation_internal",
"//ios/chrome/browser/history:tab_helper",
"//ios/chrome/browser/net",
"//ios/chrome/browser/prefs",
"//ios/chrome/browser/signin",
"//ios/chrome/browser/tabs",
"//ios/chrome/browser/ui",
......
......@@ -11,7 +11,6 @@
#include "components/prefs/pref_change_registrar.h"
#import "ios/chrome/browser/net/connection_type_observer_bridge.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#include "ios/web/public/referrer.h"
#import "ios/web/public/web_state/ui/crw_native_content_provider.h"
#import "ios/web/public/web_state/web_state_delegate_bridge.h"
......@@ -34,7 +33,6 @@ class WebState;
// given URL as well as a method to return the prerendered Tab.
@interface PreloadController : NSObject<CRWNativeContentProvider,
CRWWebStateDelegate,
PrefObserverDelegate,
CRConnectionTypeObserverBridge>
// The URL of the currently prerendered Tab. Empty if there is no prerendered
// Tab.
......
......@@ -11,6 +11,7 @@
#include "base/metrics/field_trial.h"
#include "base/metrics/histogram_macros.h"
#include "base/strings/sys_string_conversions.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_service.h"
#import "components/signin/ios/browser/account_consistency_service.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
......@@ -89,7 +90,8 @@ bool IsPrerenderTabEvictionExperimentalGroup() {
@interface PreloadController ()<CRWWebDelegate,
CRWWebStateObserver,
ManageAccountsDelegate>
ManageAccountsDelegate,
PrefObserverDelegate>
@end
@implementation PreloadController {
......
......@@ -55,6 +55,7 @@ source_set("contextual_search") {
"//base",
"//components/google/core/browser",
"//components/prefs",
"//components/prefs/ios",
"//components/search_engines",
"//components/variations",
"//components/variations/net",
......@@ -62,7 +63,6 @@ source_set("contextual_search") {
"//ios/chrome/app/strings",
"//ios/chrome/browser",
"//ios/chrome/browser/browser_state",
"//ios/chrome/browser/prefs",
"//ios/chrome/browser/search_engines",
"//ios/chrome/browser/sync",
"//ios/chrome/browser/tabs",
......
......@@ -8,13 +8,13 @@
#include "base/command_line.h"
#include "base/logging.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/prefs/pref_service.h"
#include "components/search_engines/template_url_service.h"
#include "ios/chrome/app/tests_hook.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/pref_names.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#include "ios/chrome/browser/search_engines/template_url_service_factory.h"
#include "ios/chrome/browser/sync/sync_setup_service.h"
#include "ios/chrome/browser/sync/sync_setup_service_factory.h"
......
......@@ -105,6 +105,7 @@ source_set("settings") {
"//components/metrics",
"//components/password_manager/core/browser",
"//components/password_manager/core/common",
"//components/prefs/ios",
"//components/resources",
"//components/search_engines",
"//components/signin/core/browser",
......@@ -127,7 +128,6 @@ source_set("settings") {
"//ios/chrome/browser/history",
"//ios/chrome/browser/mailto:features",
"//ios/chrome/browser/passwords",
"//ios/chrome/browser/prefs",
"//ios/chrome/browser/search_engines",
"//ios/chrome/browser/signin",
"//ios/chrome/browser/sync",
......
......@@ -5,11 +5,11 @@
#import "ios/chrome/browser/ui/settings/bandwidth_management_collection_view_controller.h"
#include "base/mac/foundation_util.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/prefs/pref_service.h"
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/pref_names.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#import "ios/chrome/browser/ui/collection_view/cells/MDCCollectionViewCell+Chrome.h"
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_detail_item.h"
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_footer_item.h"
......
......@@ -9,6 +9,7 @@
#include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_types.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/prefs/pref_service.h"
#include "components/strings/grit/components_strings.h"
......@@ -16,7 +17,6 @@
#include "ios/chrome/browser/browser_state/chrome_browser_state.h"
#include "ios/chrome/browser/content_settings/host_content_settings_map_factory.h"
#include "ios/chrome/browser/mailto/features.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_detail_item.h"
#import "ios/chrome/browser/ui/collection_view/collection_view_model.h"
#import "ios/chrome/browser/ui/settings/block_popups_collection_view_controller.h"
......
......@@ -11,6 +11,7 @@
#include "components/google/core/browser/google_util.h"
#include "components/handoff/pref_names_ios.h"
#include "components/metrics/metrics_pref_names.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_change_registrar.h"
#include "components/prefs/pref_service.h"
#include "components/signin/core/browser/signin_manager.h"
......@@ -21,7 +22,6 @@
#include "ios/chrome/browser/chrome_url_constants.h"
#include "ios/chrome/browser/experimental_flags.h"
#include "ios/chrome/browser/pref_names.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#import "ios/chrome/browser/ui/collection_view/cells/MDCCollectionViewCell+Chrome.h"
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_detail_item.h"
#import "ios/chrome/browser/ui/collection_view/cells/collection_view_footer_item.h"
......
......@@ -13,6 +13,7 @@
#include "components/keyed_service/core/service_access_type.h"
#include "components/password_manager/core/browser/password_store.h"
#include "components/password_manager/core/common/password_manager_pref_names.h"
#import "components/prefs/ios/pref_observer_bridge.h"
#include "components/prefs/pref_service.h"
#include "components/search_engines/util.h"
#include "components/signin/core/browser/signin_manager.h"
......@@ -23,7 +24,6 @@
#include "ios/chrome/browser/experimental_flags.h"
#include "ios/chrome/browser/passwords/ios_chrome_password_store_factory.h"
#include "ios/chrome/browser/pref_names.h"
#import "ios/chrome/browser/prefs/pref_observer_bridge.h"
#include "ios/chrome/browser/search_engines/template_url_service_factory.h"
#import "ios/chrome/browser/signin/authentication_service.h"
#include "ios/chrome/browser/signin/authentication_service_factory.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment