Retire ScopedObserver in chrome/browser/ui/webui.
ScopedObserver is being deprecated in favor of two new classes:
- base::ScopedObservation for observers that only ever observe
a single source.
- base::ScopedMultiSourceObservation for observers that do or may
observe more than a single source.
Tbr: [email protected]
Bug: 1145565
Change-Id: I8a6c5867c2bc5e073245e1ee82aed43d44b47632
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2611553
Reviewed-by: Sigurður Ásgeirsson <[email protected]>
Reviewed-by: François Doray <[email protected]>
Commit-Queue: Sigurður Ásgeirsson <[email protected]>
Cr-Commit-Position: refs/heads/master@{#841126}
diff --git a/chrome/browser/ui/webui/app_management/app_management_page_handler.cc b/chrome/browser/ui/webui/app_management/app_management_page_handler.cc
index 2a6b026..7ba1410 100644
--- a/chrome/browser/ui/webui/app_management/app_management_page_handler.cc
+++ b/chrome/browser/ui/webui/app_management/app_management_page_handler.cc
@@ -101,7 +101,7 @@
#if BUILDFLAG(IS_CHROMEOS_ASH)
if (arc::IsArcAllowedForProfile(profile_)) {
- arc_app_list_prefs_observer_.Add(ArcAppListPrefs::Get(profile_));
+ arc_app_list_prefs_observation_.Observe(ArcAppListPrefs::Get(profile_));
}
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
}
diff --git a/chrome/browser/ui/webui/app_management/app_management_page_handler.h b/chrome/browser/ui/webui/app_management/app_management_page_handler.h
index 2d56a70e..144d0ad 100644
--- a/chrome/browser/ui/webui/app_management/app_management_page_handler.h
+++ b/chrome/browser/ui/webui/app_management/app_management_page_handler.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_WEBUI_APP_MANAGEMENT_APP_MANAGEMENT_PAGE_HANDLER_H_
#include "base/macros.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "build/chromeos_buildflags.h"
#include "chrome/browser/ui/webui/app_management/app_management.mojom-forward.h"
#include "chrome/browser/ui/webui/app_management/app_management_shelf_delegate_chromeos.h"
@@ -78,8 +78,8 @@
Profile* profile_;
#if BUILDFLAG(IS_CHROMEOS_ASH)
- ScopedObserver<ArcAppListPrefs, ArcAppListPrefs::Observer>
- arc_app_list_prefs_observer_{this};
+ base::ScopedObservation<ArcAppListPrefs, ArcAppListPrefs::Observer>
+ arc_app_list_prefs_observation_{this};
AppManagementShelfDelegate shelf_delegate_{this};
#endif // BUILDFLAG(IS_CHROMEOS_ASH)
diff --git a/chrome/browser/ui/webui/certificate_provisioning_ui_handler.cc b/chrome/browser/ui/webui/certificate_provisioning_ui_handler.cc
index 8fc025f0..fa72af7 100644
--- a/chrome/browser/ui/webui/certificate_provisioning_ui_handler.cc
+++ b/chrome/browser/ui/webui/certificate_provisioning_ui_handler.cc
@@ -169,9 +169,9 @@
? scheduler_for_device
: nullptr) {
if (scheduler_for_user_)
- observed_schedulers_.Add(scheduler_for_user_);
+ observed_schedulers_.AddObservation(scheduler_for_user_);
if (scheduler_for_device_)
- observed_schedulers_.Add(scheduler_for_device_);
+ observed_schedulers_.AddObservation(scheduler_for_device_);
}
CertificateProvisioningUiHandler::~CertificateProvisioningUiHandler() = default;
diff --git a/chrome/browser/ui/webui/certificate_provisioning_ui_handler.h b/chrome/browser/ui/webui/certificate_provisioning_ui_handler.h
index 8732b34..a71ce112 100644
--- a/chrome/browser/ui/webui/certificate_provisioning_ui_handler.h
+++ b/chrome/browser/ui/webui/certificate_provisioning_ui_handler.h
@@ -8,7 +8,7 @@
#include <utility>
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_multi_source_observation.h"
#include "base/timer/timer.h"
#include "base/values.h"
#include "chrome/browser/chromeos/cert_provisioning/cert_provisioning_scheduler.h"
@@ -109,7 +109,8 @@
// Keeps track of the CertProvisioningSchedulers that this UI handler
// observes.
- ScopedObserver<CertProvisioningScheduler, CertProvisioningSchedulerObserver>
+ base::ScopedMultiSourceObservation<CertProvisioningScheduler,
+ CertProvisioningSchedulerObserver>
observed_schedulers_{this};
base::WeakPtrFactory<CertificateProvisioningUiHandler> weak_ptr_factory_{
diff --git a/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.cc b/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.cc
index 1fd4297..c79de40 100644
--- a/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.cc
+++ b/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.cc
@@ -69,15 +69,17 @@
if (device_data_manager->AreDeviceListsComplete() &&
device_data_manager->AreTouchscreenTargetDisplaysValid()) {
MoveToTouchDisplay();
- } else if (!scoped_observer_.IsObserving(device_data_manager)) {
- scoped_observer_.Add(device_data_manager);
+ } else if (!scoped_observation_.IsObserving()) {
+ scoped_observation_.Observe(device_data_manager);
+ } else {
+ DCHECK(scoped_observation_.IsObservingSource(device_data_manager));
}
}
void OobeDisplayChooser::MoveToTouchDisplay() {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
- scoped_observer_.RemoveAll();
+ scoped_observation_.Reset();
const ui::DeviceDataManager* device_data_manager =
ui::DeviceDataManager::GetInstance();
diff --git a/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.h b/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.h
index d6b373c..e79cc51 100644
--- a/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.h
+++ b/chrome/browser/ui/webui/chromeos/login/oobe_display_chooser.h
@@ -8,7 +8,7 @@
#include "ash/public/mojom/cros_display_config.mojom.h"
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "ui/events/devices/device_data_manager.h"
@@ -48,8 +48,8 @@
void OnTouchDeviceAssociationChanged() override;
void OnDeviceListsComplete() override;
- ScopedObserver<ui::DeviceDataManager, ui::InputDeviceEventObserver>
- scoped_observer_{this};
+ base::ScopedObservation<ui::DeviceDataManager, ui::InputDeviceEventObserver>
+ scoped_observation_{this};
mojo::Remote<ash::mojom::CrosDisplayConfigController> cros_display_config_;
base::WeakPtrFactory<OobeDisplayChooser> weak_ptr_factory_{this};
diff --git a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
index 497f74d..0303b86 100644
--- a/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
+++ b/chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h
@@ -17,7 +17,6 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
#include "chrome/browser/chromeos/login/screens/error_screen.h"
#include "chrome/browser/chromeos/login/signin_specifics.h"
#include "chrome/browser/chromeos/login/ui/login_display.h"
diff --git a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.cc b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.cc
index 837677c7..990f81e 100644
--- a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.cc
+++ b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.cc
@@ -39,7 +39,7 @@
} // namespace
-MultideviceLogsHandler::MultideviceLogsHandler() : observer_(this) {}
+MultideviceLogsHandler::MultideviceLogsHandler() {}
MultideviceLogsHandler::~MultideviceLogsHandler() = default;
@@ -51,11 +51,11 @@
}
void MultideviceLogsHandler::OnJavascriptAllowed() {
- observer_.Add(multidevice::LogBuffer::GetInstance());
+ observation_.Observe(multidevice::LogBuffer::GetInstance());
}
void MultideviceLogsHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void MultideviceLogsHandler::HandleGetLogMessages(const base::ListValue* args) {
diff --git a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.h b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.h
index e8cb0a8..92289bb 100644
--- a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.h
+++ b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_logs_handler.h
@@ -5,7 +5,7 @@
#ifndef CHROME_BROWSER_UI_WEBUI_CHROMEOS_MULTIDEVICE_INTERNALS_MULTIDEVICE_INTERNALS_LOGS_HANDLER_H_
#define CHROME_BROWSER_UI_WEBUI_CHROMEOS_MULTIDEVICE_INTERNALS_MULTIDEVICE_INTERNALS_LOGS_HANDLER_H_
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chromeos/components/multidevice/logging/log_buffer.h"
#include "chromeos/components/multidevice/logging/logging.h"
#include "content/public/browser/web_ui_message_handler.h"
@@ -45,8 +45,9 @@
// Message handler callback that clears the Log Buffer.
void ClearLogBuffer(const base::ListValue* args);
- ScopedObserver<multidevice::LogBuffer, multidevice::LogBuffer::Observer>
- observer_{this};
+ base::ScopedObservation<multidevice::LogBuffer,
+ multidevice::LogBuffer::Observer>
+ observation_{this};
};
} // namespace multidevice
diff --git a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.cc b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.cc
index d3846a4..c419ad5 100644
--- a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.cc
+++ b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.cc
@@ -205,51 +205,24 @@
}
void MultidevicePhoneHubHandler::AddObservers() {
- notification_manager_observer_.Add(
+ notification_manager_observation_.Observe(
fake_phone_hub_manager_->fake_notification_manager());
- do_not_disturb_controller_observer_.Add(
+ do_not_disturb_controller_observation_.Observe(
fake_phone_hub_manager_->fake_do_not_disturb_controller());
- find_my_device_controller_oberserver_.Add(
+ find_my_device_controller_observation_.Observe(
fake_phone_hub_manager_->fake_find_my_device_controller());
- tether_controller_observer_.Add(
+ tether_controller_observation_.Observe(
fake_phone_hub_manager_->fake_tether_controller());
- onboarding_ui_tracker_observer_.Add(
+ onboarding_ui_tracker_observation_.Observe(
fake_phone_hub_manager_->fake_onboarding_ui_tracker());
}
void MultidevicePhoneHubHandler::RemoveObservers() {
- phonehub::FakeNotificationManager* fake_notification_manager =
- fake_phone_hub_manager_->fake_notification_manager();
- if (notification_manager_observer_.IsObserving(fake_notification_manager)) {
- notification_manager_observer_.Remove(fake_notification_manager);
- }
-
- phonehub::FakeDoNotDisturbController* fake_do_not_disturb_controller =
- fake_phone_hub_manager_->fake_do_not_disturb_controller();
- if (do_not_disturb_controller_observer_.IsObserving(
- fake_do_not_disturb_controller)) {
- do_not_disturb_controller_observer_.Remove(fake_do_not_disturb_controller);
- }
-
- phonehub::FakeFindMyDeviceController* fake_find_my_device_controller =
- fake_phone_hub_manager_->fake_find_my_device_controller();
- if (find_my_device_controller_oberserver_.IsObserving(
- fake_find_my_device_controller)) {
- find_my_device_controller_oberserver_.Remove(
- fake_find_my_device_controller);
- }
-
- phonehub::FakeTetherController* fake_tether_controller =
- fake_phone_hub_manager_->fake_tether_controller();
- if (tether_controller_observer_.IsObserving(fake_tether_controller)) {
- tether_controller_observer_.Remove(fake_tether_controller);
- }
-
- phonehub::OnboardingUiTracker* fake_onboarding_ui_tracker =
- fake_phone_hub_manager_->fake_onboarding_ui_tracker();
- if (onboarding_ui_tracker_observer_.IsObserving(fake_onboarding_ui_tracker)) {
- onboarding_ui_tracker_observer_.Remove(fake_onboarding_ui_tracker);
- }
+ notification_manager_observation_.Reset();
+ do_not_disturb_controller_observation_.Reset();
+ find_my_device_controller_observation_.Reset();
+ tether_controller_observation_.Reset();
+ onboarding_ui_tracker_observation_.Reset();
}
void MultidevicePhoneHubHandler::OnNotificationsRemoved(
diff --git a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.h b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.h
index e0ec4f0..07a1242a 100644
--- a/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.h
+++ b/chrome/browser/ui/webui/chromeos/multidevice_internals/multidevice_internals_phone_hub_handler.h
@@ -5,7 +5,7 @@
#ifndef CHROME_BROWSER_UI_WEBUI_CHROMEOS_MULTIDEVICE_INTERNALS_MULTIDEVICE_INTERNALS_PHONE_HUB_HANDLER_H_
#define CHROME_BROWSER_UI_WEBUI_CHROMEOS_MULTIDEVICE_INTERNALS_MULTIDEVICE_INTERNALS_PHONE_HUB_HANDLER_H_
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chromeos/components/phonehub/do_not_disturb_controller.h"
#include "chromeos/components/phonehub/find_my_device_controller.h"
#include "chromeos/components/phonehub/notification_manager.h"
@@ -79,21 +79,21 @@
void RemoveObservers();
std::unique_ptr<phonehub::FakePhoneHubManager> fake_phone_hub_manager_;
- ScopedObserver<phonehub::NotificationManager,
- phonehub::NotificationManager::Observer>
- notification_manager_observer_{this};
- ScopedObserver<phonehub::DoNotDisturbController,
- phonehub::DoNotDisturbController::Observer>
- do_not_disturb_controller_observer_{this};
- ScopedObserver<phonehub::FindMyDeviceController,
- phonehub::FindMyDeviceController::Observer>
- find_my_device_controller_oberserver_{this};
- ScopedObserver<phonehub::TetherController,
- phonehub::TetherController::Observer>
- tether_controller_observer_{this};
- ScopedObserver<phonehub::OnboardingUiTracker,
- phonehub::OnboardingUiTracker::Observer>
- onboarding_ui_tracker_observer_{this};
+ base::ScopedObservation<phonehub::NotificationManager,
+ phonehub::NotificationManager::Observer>
+ notification_manager_observation_{this};
+ base::ScopedObservation<phonehub::DoNotDisturbController,
+ phonehub::DoNotDisturbController::Observer>
+ do_not_disturb_controller_observation_{this};
+ base::ScopedObservation<phonehub::FindMyDeviceController,
+ phonehub::FindMyDeviceController::Observer>
+ find_my_device_controller_observation_{this};
+ base::ScopedObservation<phonehub::TetherController,
+ phonehub::TetherController::Observer>
+ tether_controller_observation_{this};
+ base::ScopedObservation<phonehub::OnboardingUiTracker,
+ phonehub::OnboardingUiTracker::Observer>
+ onboarding_ui_tracker_observation_{this};
};
} // namespace multidevice
diff --git a/chrome/browser/ui/webui/chromeos/set_time_ui.cc b/chrome/browser/ui/webui/chromeos/set_time_ui.cc
index 3fffeae..2c2e1fd 100644
--- a/chrome/browser/ui/webui/chromeos/set_time_ui.cc
+++ b/chrome/browser/ui/webui/chromeos/set_time_ui.cc
@@ -14,7 +14,7 @@
#include "base/build_time.h"
#include "base/callback_helpers.h"
#include "base/macros.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/values.h"
#include "chrome/browser/chromeos/child_accounts/parent_access_code/parent_access_service.h"
#include "chrome/browser/chromeos/set_time_dialog.h"
@@ -69,13 +69,13 @@
}
void OnJavascriptAllowed() override {
- clock_observer_.Add(SystemClockClient::Get());
- timezone_observer_.Add(system::TimezoneSettings::GetInstance());
+ clock_observation_.Observe(SystemClockClient::Get());
+ timezone_observation_.Observe(system::TimezoneSettings::GetInstance());
}
void OnJavascriptDisallowed() override {
- clock_observer_.RemoveAll();
- timezone_observer_.RemoveAll();
+ clock_observation_.Reset();
+ timezone_observation_.Reset();
}
private:
@@ -157,10 +157,11 @@
FireWebUIListener("validation-complete");
}
- ScopedObserver<SystemClockClient, SystemClockClient::Observer>
- clock_observer_{this};
- ScopedObserver<system::TimezoneSettings, system::TimezoneSettings::Observer>
- timezone_observer_{this};
+ base::ScopedObservation<SystemClockClient, SystemClockClient::Observer>
+ clock_observation_{this};
+ base::ScopedObservation<system::TimezoneSettings,
+ system::TimezoneSettings::Observer>
+ timezone_observation_{this};
base::WeakPtrFactory<SetTimeMessageHandler> weak_factory_{this};
DISALLOW_COPY_AND_ASSIGN(SetTimeMessageHandler);
diff --git a/chrome/browser/ui/webui/components/components_handler.cc b/chrome/browser/ui/webui/components/components_handler.cc
index 12e81dd..1f9014b 100644
--- a/chrome/browser/ui/webui/components/components_handler.cc
+++ b/chrome/browser/ui/webui/components/components_handler.cc
@@ -34,11 +34,11 @@
}
void ComponentsHandler::OnJavascriptAllowed() {
- observer_.Add(component_updater_);
+ observation_.Observe(component_updater_);
}
void ComponentsHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void ComponentsHandler::HandleRequestComponentsData(
diff --git a/chrome/browser/ui/webui/components/components_handler.h b/chrome/browser/ui/webui/components/components_handler.h
index 5ed5d43..4f2f38f 100644
--- a/chrome/browser/ui/webui/components/components_handler.h
+++ b/chrome/browser/ui/webui/components/components_handler.h
@@ -8,7 +8,7 @@
#include <memory>
#include <string>
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/strings/string16.h"
#include "components/component_updater/component_updater_service.h"
#include "components/update_client/update_client.h"
@@ -53,9 +53,9 @@
// Weak pointer; injected for testing.
component_updater::ComponentUpdateService* const component_updater_;
- ScopedObserver<component_updater::ComponentUpdateService,
- component_updater::ComponentUpdateService::Observer>
- observer_{this};
+ base::ScopedObservation<component_updater::ComponentUpdateService,
+ component_updater::ComponentUpdateService::Observer>
+ observation_{this};
};
#endif // CHROME_BROWSER_UI_WEBUI_COMPONENTS_COMPONENTS_HANDLER_H_
diff --git a/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.cc b/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.cc
index 96355ed8..056ed9c 100644
--- a/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.cc
+++ b/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.cc
@@ -105,9 +105,9 @@
}
void QueryTilesInternalsUIMessageHandler::OnJavascriptAllowed() {
- logger_observer_.Add(tile_service_->GetLogger());
+ logger_observation_.Observe(tile_service_->GetLogger());
}
void QueryTilesInternalsUIMessageHandler::OnJavascriptDisallowed() {
- logger_observer_.RemoveAll();
+ logger_observation_.Reset();
}
diff --git a/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.h b/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.h
index f896b56..dc1cb45 100644
--- a/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.h
+++ b/chrome/browser/ui/webui/internals/query_tiles/query_tiles_internals_ui_message_handler.h
@@ -7,7 +7,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "components/query_tiles/logger.h"
#include "content/public/browser/web_ui_message_handler.h"
@@ -46,8 +46,8 @@
query_tiles::TileService* tile_service_;
- ScopedObserver<query_tiles::Logger, query_tiles::Logger::Observer>
- logger_observer_{this};
+ base::ScopedObservation<query_tiles::Logger, query_tiles::Logger::Observer>
+ logger_observation_{this};
base::WeakPtrFactory<QueryTilesInternalsUIMessageHandler> weak_ptr_factory_{
this};
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.cc b/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.cc
index 1264b4b..4e0f1fd1 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.cc
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.cc
@@ -104,14 +104,14 @@
NearbySharingService* service_ =
NearbySharingServiceFactory::GetForBrowserContext(context_);
if (service_) {
- observer_.Add(service_->GetContactManager());
+ observation_.Observe(service_->GetContactManager());
} else {
NS_LOG(ERROR) << "No NearbyShareService instance to call.";
}
}
void NearbyInternalsContactHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void NearbyInternalsContactHandler::InitializeContents(
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.h b/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.h
index 02a568f..a5bd632 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.h
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_contact_handler.h
@@ -11,7 +11,7 @@
#include "base/memory/weak_ptr.h"
#include "base/optional.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/nearby_sharing/contacts/nearby_share_contact_manager.h"
#include "chrome/browser/nearby_sharing/proto/rpc_resources.pb.h"
#include "content/public/browser/web_ui_message_handler.h"
@@ -57,8 +57,9 @@
void HandleDownloadContacts(const base::ListValue* args);
content::BrowserContext* context_;
- ScopedObserver<NearbyShareContactManager, NearbyShareContactManager::Observer>
- observer_{this};
+ base::ScopedObservation<NearbyShareContactManager,
+ NearbyShareContactManager::Observer>
+ observation_{this};
base::WeakPtrFactory<NearbyInternalsContactHandler> weak_ptr_factory_{this};
};
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.cc b/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.cc
index 6d0f2427..83260ce 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.cc
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.cc
@@ -96,14 +96,14 @@
NearbySharingService* service_ =
NearbySharingServiceFactory::GetForBrowserContext(context_);
if (service_) {
- observer_.Add(service_->GetHttpNotifier());
+ observation_.Observe(service_->GetHttpNotifier());
} else {
NS_LOG(ERROR) << "No NearbyShareService instance to call.";
}
}
void NearbyInternalsHttpHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void NearbyInternalsHttpHandler::InitializeContents(
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.h b/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.h
index da37e13..62bfaaa 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.h
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_http_handler.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_WEBUI_NEARBY_INTERNALS_NEARBY_INTERNALS_HTTP_HANDLER_H_
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/nearby_sharing/client/nearby_share_http_notifier.h"
#include "chrome/browser/nearby_sharing/proto/certificate_rpc.pb.h"
#include "chrome/browser/nearby_sharing/proto/contact_rpc.pb.h"
@@ -67,8 +67,9 @@
void ListContactPeople(const base::ListValue* args);
content::BrowserContext* const context_;
- ScopedObserver<NearbyShareHttpNotifier, NearbyShareHttpNotifier::Observer>
- observer_{this};
+ base::ScopedObservation<NearbyShareHttpNotifier,
+ NearbyShareHttpNotifier::Observer>
+ observation_{this};
base::WeakPtrFactory<NearbyInternalsHttpHandler> weak_ptr_factory_{this};
};
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.cc b/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.cc
index ba44fc2..e72da2f 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.cc
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.cc
@@ -31,7 +31,7 @@
}
} // namespace
-NearbyInternalsLogsHandler::NearbyInternalsLogsHandler() : observer_(this) {}
+NearbyInternalsLogsHandler::NearbyInternalsLogsHandler() {}
NearbyInternalsLogsHandler::~NearbyInternalsLogsHandler() = default;
@@ -43,11 +43,11 @@
}
void NearbyInternalsLogsHandler::OnJavascriptAllowed() {
- observer_.Add(LogBuffer::GetInstance());
+ observation_.Observe(LogBuffer::GetInstance());
}
void NearbyInternalsLogsHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void NearbyInternalsLogsHandler::HandleGetLogMessages(
diff --git a/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.h b/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.h
index 3ba482bd..48b6927 100644
--- a/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.h
+++ b/chrome/browser/ui/webui/nearby_internals/nearby_internals_logs_handler.h
@@ -5,7 +5,7 @@
#define CHROME_BROWSER_UI_WEBUI_NEARBY_INTERNALS_NEARBY_INTERNALS_LOGS_HANDLER_H_
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/values.h"
#include "chrome/browser/nearby_sharing/logging/log_buffer.h"
#include "chrome/browser/nearby_sharing/logging/logging.h"
@@ -42,7 +42,7 @@
// Message handler callback that clears the Log Buffer.
void ClearLogBuffer(const base::ListValue* args);
- ScopedObserver<LogBuffer, LogBuffer::Observer> observer_{this};
+ base::ScopedObservation<LogBuffer, LogBuffer::Observer> observation_{this};
base::WeakPtrFactory<NearbyInternalsLogsHandler> weak_ptr_factory_{this};
};
diff --git a/chrome/browser/ui/webui/net_export_ui.cc b/chrome/browser/ui/webui/net_export_ui.cc
index f27414c..a233236 100644
--- a/chrome/browser/ui/webui/net_export_ui.cc
+++ b/chrome/browser/ui/webui/net_export_ui.cc
@@ -16,7 +16,7 @@
#include "base/lazy_instance.h"
#include "base/macros.h"
#include "base/memory/ref_counted.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/single_thread_task_runner.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
@@ -139,9 +139,9 @@
// Cached pointer to SystemNetworkContextManager's NetExportFileWriter.
net_log::NetExportFileWriter* file_writer_;
- ScopedObserver<net_log::NetExportFileWriter,
- net_log::NetExportFileWriter::StateObserver>
- state_observer_manager_;
+ base::ScopedObservation<net_log::NetExportFileWriter,
+ net_log::NetExportFileWriter::StateObserver>
+ state_observation_manager_{this};
// The capture mode and file size bound that the user chose in the UI when
// logging started is cached here and is read after a file path is chosen in
@@ -159,8 +159,7 @@
NetExportMessageHandler::NetExportMessageHandler()
: file_writer_(g_browser_process->system_network_context_manager()
- ->GetNetExportFileWriter()),
- state_observer_manager_(this) {
+ ->GetNetExportFileWriter()) {
file_writer_->Initialize();
}
@@ -204,8 +203,8 @@
void NetExportMessageHandler::OnEnableNotifyUIWithState(
const base::ListValue* list) {
DCHECK_CURRENTLY_ON(BrowserThread::UI);
- if (!state_observer_manager_.IsObservingSources()) {
- state_observer_manager_.Add(file_writer_);
+ if (!state_observation_manager_.IsObserving()) {
+ state_observation_manager_.Observe(file_writer_);
}
NotifyUIWithState(file_writer_->GetState());
}
diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc
index 82fc446..833e8ec 100644
--- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc
+++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.cc
@@ -390,8 +390,8 @@
instant_service_->UpdateNtpTheme();
OmniboxTabHelper::CreateForWebContents(web_contents);
OmniboxTabHelper::FromWebContents(web_contents_)->AddObserver(this);
- promo_service_observer_.Add(promo_service_);
- one_google_bar_service_observer_.Add(one_google_bar_service_);
+ promo_service_observation_.Observe(promo_service_);
+ one_google_bar_service_observation_.Observe(one_google_bar_service_);
logger_.SetModulesVisible(
profile_->GetPrefs()->GetBoolean(prefs::kNtpModulesVisible));
}
@@ -721,7 +721,7 @@
}
void NewTabPageHandler::OnPromoServiceShuttingDown() {
- promo_service_observer_.RemoveAll();
+ promo_service_observation_.Reset();
promo_service_ = nullptr;
}
@@ -1368,7 +1368,7 @@
}
void NewTabPageHandler::OnOneGoogleBarServiceShuttingDown() {
- one_google_bar_service_observer_.RemoveAll();
+ one_google_bar_service_observation_.Reset();
one_google_bar_service_ = nullptr;
}
diff --git a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h
index b0c3960..28f5a26 100644
--- a/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h
+++ b/chrome/browser/ui/webui/new_tab_page/new_tab_page_handler.h
@@ -11,7 +11,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
#include "base/optional.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/time/time.h"
#include "chrome/browser/bitmap_fetcher/bitmap_fetcher_service.h"
#include "chrome/browser/search/background/ntp_background_service_observer.h"
@@ -229,8 +229,8 @@
base::TimeTicks background_images_request_start_time_;
std::vector<GetOneGoogleBarPartsCallback> one_google_bar_parts_callbacks_;
OneGoogleBarService* one_google_bar_service_;
- ScopedObserver<OneGoogleBarService, OneGoogleBarServiceObserver>
- one_google_bar_service_observer_{this};
+ base::ScopedObservation<OneGoogleBarService, OneGoogleBarServiceObserver>
+ one_google_bar_service_observation_{this};
base::Optional<base::TimeTicks> one_google_bar_load_start_time_;
Profile* profile_;
scoped_refptr<ui::SelectFileDialog> select_file_dialog_;
@@ -247,8 +247,8 @@
loader_map_;
std::vector<GetPromoCallback> promo_callbacks_;
PromoService* promo_service_;
- ScopedObserver<PromoService, PromoServiceObserver> promo_service_observer_{
- this};
+ base::ScopedObservation<PromoService, PromoServiceObserver>
+ promo_service_observation_{this};
base::Optional<base::TimeTicks> promo_load_start_time_;
// These are located at the end of the list of member variables to ensure the
diff --git a/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc b/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc
index 41d892c2..315fd9c0 100644
--- a/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc
+++ b/chrome/browser/ui/webui/new_tab_page/untrusted_source.cc
@@ -71,7 +71,7 @@
// |one_google_bar_service_| is null in incognito, or when the feature is
// disabled.
if (one_google_bar_service_) {
- one_google_bar_service_observer_.Add(one_google_bar_service_);
+ one_google_bar_service_observation_.Observe(one_google_bar_service_);
}
}
@@ -269,7 +269,7 @@
}
void UntrustedSource::OnOneGoogleBarServiceShuttingDown() {
- one_google_bar_service_observer_.RemoveAll();
+ one_google_bar_service_observation_.Reset();
one_google_bar_service_ = nullptr;
}
diff --git a/chrome/browser/ui/webui/new_tab_page/untrusted_source.h b/chrome/browser/ui/webui/new_tab_page/untrusted_source.h
index 420a55c..03fd3bd 100644
--- a/chrome/browser/ui/webui/new_tab_page/untrusted_source.h
+++ b/chrome/browser/ui/webui/new_tab_page/untrusted_source.h
@@ -8,7 +8,7 @@
#include <string>
#include <vector>
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/search/one_google_bar/one_google_bar_service.h"
#include "chrome/browser/search/one_google_bar/one_google_bar_service_observer.h"
#include "content/public/browser/url_data_source.h"
@@ -79,8 +79,8 @@
std::vector<content::URLDataSource::GotDataCallback>
one_google_bar_callbacks_;
OneGoogleBarService* one_google_bar_service_;
- ScopedObserver<OneGoogleBarService, OneGoogleBarServiceObserver>
- one_google_bar_service_observer_{this};
+ base::ScopedObservation<OneGoogleBarService, OneGoogleBarServiceObserver>
+ one_google_bar_service_observation_{this};
base::Optional<base::TimeTicks> one_google_bar_load_start_time_;
Profile* profile_;
};
diff --git a/chrome/browser/ui/webui/ntp/app_launcher_handler.cc b/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
index 38aa9336..24f5201 100644
--- a/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
+++ b/chrome/browser/ui/webui/ntp/app_launcher_handler.cc
@@ -582,7 +582,7 @@
}
void AppLauncherHandler::OnAppRegistrarDestroyed() {
- web_apps_observer_.RemoveAll();
+ web_apps_observation_.Reset();
}
void AppLauncherHandler::FillAppDictionary(base::DictionaryValue* dictionary) {
@@ -711,7 +711,7 @@
registrar_.Add(this, chrome::NOTIFICATION_APP_LAUNCHER_REORDERED,
content::Source<AppSorting>(
ExtensionSystem::Get(profile)->app_sorting()));
- web_apps_observer_.Add(&web_app_provider_->registrar());
+ web_apps_observation_.Observe(&web_app_provider_->registrar());
}
has_loaded_apps_ = true;
diff --git a/chrome/browser/ui/webui/ntp/app_launcher_handler.h b/chrome/browser/ui/webui/ntp/app_launcher_handler.h
index f7fb6a7..385649119 100644
--- a/chrome/browser/ui/webui/ntp/app_launcher_handler.h
+++ b/chrome/browser/ui/webui/ntp/app_launcher_handler.h
@@ -11,7 +11,7 @@
#include "base/macros.h"
#include "base/optional.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/task/cancelable_task_tracker.h"
#include "chrome/browser/extensions/extension_uninstall_dialog.h"
#include "chrome/browser/ui/extensions/extension_enable_flow_delegate.h"
@@ -224,8 +224,8 @@
// features::kDesktopPWAsWithoutExtensions is enabled.
web_app::WebAppProvider* const web_app_provider_;
- ScopedObserver<web_app::AppRegistrar, web_app::AppRegistrarObserver>
- web_apps_observer_{this};
+ base::ScopedObservation<web_app::AppRegistrar, web_app::AppRegistrarObserver>
+ web_apps_observation_{this};
// We monitor changes to the extension system so that we can reload the apps
// when necessary.
diff --git a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc b/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
index 2cd7018..0c1fd1d8 100644
--- a/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
+++ b/chrome/browser/ui/webui/ntp/ntp_resource_cache.cc
@@ -178,7 +178,7 @@
profile_pref_change_registrar_.Add(prefs::kHideWebStoreIcon, callback);
profile_pref_change_registrar_.Add(prefs::kCookieControlsMode, callback);
- theme_observer_.Add(ui::NativeTheme::GetInstanceForNativeUi());
+ theme_observation_.Observe(ui::NativeTheme::GetInstanceForNativeUi());
policy_change_registrar_ = std::make_unique<policy::PolicyChangeRegistrar>(
profile->GetProfilePolicyConnector()->policy_service(),
diff --git a/chrome/browser/ui/webui/ntp/ntp_resource_cache.h b/chrome/browser/ui/webui/ntp/ntp_resource_cache.h
index 6e6fb43..353a3ec 100644
--- a/chrome/browser/ui/webui/ntp/ntp_resource_cache.h
+++ b/chrome/browser/ui/webui/ntp/ntp_resource_cache.h
@@ -11,7 +11,7 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "base/memory/ref_counted_memory.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "components/keyed_service/core/keyed_service.h"
#include "components/prefs/pref_change_registrar.h"
#include "content/public/browser/notification_observer.h"
@@ -134,8 +134,8 @@
// Set based on platform_util::IsSwipeTrackingFromScrollEventsEnabled.
bool is_swipe_tracking_from_scroll_events_enabled_;
- ScopedObserver<ui::NativeTheme, ui::NativeThemeObserver> theme_observer_{
- this};
+ base::ScopedObservation<ui::NativeTheme, ui::NativeThemeObserver>
+ theme_observation_{this};
std::unique_ptr<policy::PolicyChangeRegistrar> policy_change_registrar_;
diff --git a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc b/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc
index a226e412..0b83168 100644
--- a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc
+++ b/chrome/browser/ui/webui/omnibox/omnibox_page_handler.cc
@@ -200,10 +200,9 @@
OmniboxPageHandler::OmniboxPageHandler(
Profile* profile,
mojo::PendingReceiver<mojom::OmniboxPageHandler> receiver)
- : profile_(profile),
- receiver_(this, std::move(receiver)),
- observer_(this) {
- observer_.Add(OmniboxControllerEmitter::GetForBrowserContext(profile_));
+ : profile_(profile), receiver_(this, std::move(receiver)) {
+ observation_.Observe(
+ OmniboxControllerEmitter::GetForBrowserContext(profile_));
ResetController();
}
diff --git a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.h b/chrome/browser/ui/webui/omnibox/omnibox_page_handler.h
index eee3cc2..3b529a26a 100644
--- a/chrome/browser/ui/webui/omnibox/omnibox_page_handler.h
+++ b/chrome/browser/ui/webui/omnibox/omnibox_page_handler.h
@@ -12,7 +12,7 @@
#include "base/compiler_specific.h"
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "base/time/time.h"
#include "chrome/browser/ui/webui/omnibox/omnibox.mojom.h"
#include "components/omnibox/browser/autocomplete_controller.h"
@@ -90,8 +90,9 @@
mojo::Receiver<mojom::OmniboxPageHandler> receiver_;
- ScopedObserver<OmniboxControllerEmitter, AutocompleteController::Observer>
- observer_;
+ base::ScopedObservation<OmniboxControllerEmitter,
+ AutocompleteController::Observer>
+ observation_{this};
base::WeakPtrFactory<OmniboxPageHandler> weak_factory_{this};
diff --git a/chrome/browser/ui/webui/settings/chromeos/accessibility_section.h b/chrome/browser/ui/webui/settings/chromeos/accessibility_section.h
index e87764dd..fab8783 100644
--- a/chrome/browser/ui/webui/settings/chromeos/accessibility_section.h
+++ b/chrome/browser/ui/webui/settings/chromeos/accessibility_section.h
@@ -5,7 +5,6 @@
#ifndef CHROME_BROWSER_UI_WEBUI_SETTINGS_CHROMEOS_ACCESSIBILITY_SECTION_H_
#define CHROME_BROWSER_UI_WEBUI_SETTINGS_CHROMEOS_ACCESSIBILITY_SECTION_H_
-#include "base/scoped_observer.h"
#include "base/values.h"
#include "chrome/browser/ui/webui/settings/chromeos/os_settings_section.h"
#include "components/prefs/pref_change_registrar.h"
diff --git a/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.cc b/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.cc
index 8ecced2..4eaf6b31 100644
--- a/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.cc
@@ -175,10 +175,7 @@
AccountManagerUIHandler::AccountManagerUIHandler(
AccountManager* account_manager,
signin::IdentityManager* identity_manager)
- : account_manager_(account_manager),
- identity_manager_(identity_manager),
- account_manager_observer_(this),
- identity_manager_observer_(this) {
+ : account_manager_(account_manager), identity_manager_(identity_manager) {
DCHECK(account_manager_);
DCHECK(identity_manager_);
}
@@ -407,13 +404,13 @@
}
void AccountManagerUIHandler::OnJavascriptAllowed() {
- account_manager_observer_.Add(account_manager_);
- identity_manager_observer_.Add(identity_manager_);
+ account_manager_observation_.Observe(account_manager_);
+ identity_manager_observation_.Observe(identity_manager_);
}
void AccountManagerUIHandler::OnJavascriptDisallowed() {
- account_manager_observer_.RemoveAll();
- identity_manager_observer_.RemoveAll();
+ account_manager_observation_.Reset();
+ identity_manager_observation_.Reset();
}
// |AccountManager::Observer| overrides. Note: We need to listen on
diff --git a/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.h b/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.h
index f3d2bfc..4482af6 100644
--- a/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/account_manager_handler.h
@@ -10,7 +10,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
#include "chromeos/components/account_manager/account_manager.h"
#include "components/account_id/account_id.h"
@@ -104,13 +104,14 @@
// An observer for |AccountManager|. Automatically deregisters when |this| is
// destructed.
- ScopedObserver<AccountManager, AccountManager::Observer>
- account_manager_observer_;
+ base::ScopedObservation<AccountManager, AccountManager::Observer>
+ account_manager_observation_{this};
// An observer for |signin::IdentityManager|. Automatically deregisters when
// |this| is destructed.
- ScopedObserver<signin::IdentityManager, signin::IdentityManager::Observer>
- identity_manager_observer_;
+ base::ScopedObservation<signin::IdentityManager,
+ signin::IdentityManager::Observer>
+ identity_manager_observation_{this};
base::WeakPtrFactory<AccountManagerUIHandler> weak_factory_{this};
diff --git a/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.cc b/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.cc
index df482d3..9356083f 100644
--- a/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.cc
@@ -17,10 +17,7 @@
namespace chromeos {
namespace settings {
-AndroidAppsHandler::AndroidAppsHandler(Profile* profile)
- : arc_prefs_observer_(this),
- arc_session_manager_observer_(this),
- profile_(profile) {}
+AndroidAppsHandler::AndroidAppsHandler(Profile* profile) : profile_(profile) {}
AndroidAppsHandler::~AndroidAppsHandler() {}
@@ -43,15 +40,15 @@
void AndroidAppsHandler::OnJavascriptAllowed() {
ArcAppListPrefs* arc_prefs = ArcAppListPrefs::Get(profile_);
if (arc_prefs) {
- arc_prefs_observer_.Add(arc_prefs);
+ arc_prefs_observation_.Observe(arc_prefs);
// arc::ArcSessionManager is associated with primary profile.
- arc_session_manager_observer_.Add(arc::ArcSessionManager::Get());
+ arc_session_manager_observation_.Observe(arc::ArcSessionManager::Get());
}
}
void AndroidAppsHandler::OnJavascriptDisallowed() {
- arc_prefs_observer_.RemoveAll();
- arc_session_manager_observer_.RemoveAll();
+ arc_prefs_observation_.Reset();
+ arc_session_manager_observation_.Reset();
}
void AndroidAppsHandler::OnAppRegistered(
diff --git a/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.h b/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.h
index f6b0242..373e2a12 100644
--- a/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/android_apps_handler.h
@@ -10,7 +10,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/chromeos/arc/session/arc_session_manager.h"
#include "chrome/browser/chromeos/arc/session/arc_session_manager_observer.h"
#include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h"
@@ -56,10 +56,11 @@
void ShowAndroidManageAppLinks(const base::ListValue* args);
int64_t GetDisplayIdForCurrentProfile();
- ScopedObserver<ArcAppListPrefs, ArcAppListPrefs::Observer>
- arc_prefs_observer_;
- ScopedObserver<arc::ArcSessionManager, arc::ArcSessionManagerObserver>
- arc_session_manager_observer_;
+ base::ScopedObservation<ArcAppListPrefs, ArcAppListPrefs::Observer>
+ arc_prefs_observation_{this};
+ base::ScopedObservation<arc::ArcSessionManager,
+ arc::ArcSessionManagerObserver>
+ arc_session_manager_observation_{this};
Profile* profile_; // unowned
base::WeakPtrFactory<AndroidAppsHandler> weak_ptr_factory_{this};
diff --git a/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc b/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc
index 6431584..2618d07 100644
--- a/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.cc
@@ -121,13 +121,18 @@
}
void ChangePictureHandler::OnJavascriptAllowed() {
- user_manager_observer_.Add(user_manager::UserManager::Get());
- camera_observer_.Add(CameraPresenceNotifier::GetInstance());
+ user_manager_observation_.Observe(user_manager::UserManager::Get());
+ camera_observation_.Observe(CameraPresenceNotifier::GetInstance());
}
void ChangePictureHandler::OnJavascriptDisallowed() {
- user_manager_observer_.Remove(user_manager::UserManager::Get());
- camera_observer_.Remove(CameraPresenceNotifier::GetInstance());
+ DCHECK(user_manager_observation_.IsObservingSource(
+ user_manager::UserManager::Get()));
+ user_manager_observation_.Reset();
+
+ DCHECK(camera_observation_.IsObservingSource(
+ CameraPresenceNotifier::GetInstance()));
+ camera_observation_.Reset();
}
void ChangePictureHandler::SendDefaultImages() {
diff --git a/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.h b/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.h
index 1be240f6..e18ab47 100644
--- a/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/change_picture_handler.h
@@ -7,7 +7,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/chromeos/camera_presence_notifier.h"
#include "chrome/browser/image_decoder/image_decoder.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
@@ -139,10 +139,12 @@
// Data for |user_photo_|.
scoped_refptr<base::RefCountedBytes> user_photo_data_;
- ScopedObserver<user_manager::UserManager, user_manager::UserManager::Observer>
- user_manager_observer_{this};
- ScopedObserver<CameraPresenceNotifier, CameraPresenceNotifier::Observer>
- camera_observer_{this};
+ base::ScopedObservation<user_manager::UserManager,
+ user_manager::UserManager::Observer>
+ user_manager_observation_{this};
+ base::ScopedObservation<CameraPresenceNotifier,
+ CameraPresenceNotifier::Observer>
+ camera_observation_{this};
base::WeakPtrFactory<ChangePictureHandler> weak_ptr_factory_{this};
diff --git a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc
index 9ac8f2d..88ac19b 100644
--- a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.cc
@@ -269,8 +269,8 @@
ppd_provider_(ppd_provider),
printer_configurer_(std::move(printer_configurer)),
printers_manager_(printers_manager),
- endpoint_resolver_(std::make_unique<local_discovery::EndpointResolver>()),
- printers_manager_observer_(this) {}
+ endpoint_resolver_(
+ std::make_unique<local_discovery::EndpointResolver>()) {}
// static
std::unique_ptr<CupsPrintersHandler> CupsPrintersHandler::CreateForTesting(
@@ -367,13 +367,12 @@
}
void CupsPrintersHandler::OnJavascriptAllowed() {
- if (!printers_manager_observer_.IsObservingSources()) {
- printers_manager_observer_.Add(printers_manager_);
- }
+ DCHECK(!printers_manager_observation_.IsObserving());
+ printers_manager_observation_.Observe(printers_manager_);
}
void CupsPrintersHandler::OnJavascriptDisallowed() {
- printers_manager_observer_.RemoveAll();
+ printers_manager_observation_.Reset();
}
void CupsPrintersHandler::SetWebUIForTest(content::WebUI* web_ui) {
diff --git a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
index 75fc8e7..1cc8e7f 100644
--- a/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/cups_printers_handler.h
@@ -11,7 +11,7 @@
#include <vector>
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/chromeos/printing/cups_printers_manager.h"
#include "chrome/browser/chromeos/printing/printer_configurer.h"
#include "chrome/browser/chromeos/printing/printer_event_tracker.h"
@@ -264,8 +264,8 @@
std::unique_ptr<ServerPrintersFetcher> server_printers_fetcher_;
- ScopedObserver<CupsPrintersManager, CupsPrintersManager::Observer>
- printers_manager_observer_;
+ base::ScopedObservation<CupsPrintersManager, CupsPrintersManager::Observer>
+ printers_manager_observation_{this};
base::WeakPtrFactory<CupsPrintersHandler> weak_factory_{this};
diff --git a/chrome/browser/ui/webui/settings/chromeos/date_time_handler.cc b/chrome/browser/ui/webui/settings/chromeos/date_time_handler.cc
index eef12177..d94ebf71e 100644
--- a/chrome/browser/ui/webui/settings/chromeos/date_time_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/date_time_handler.cc
@@ -65,7 +65,7 @@
} // namespace
-DateTimeHandler::DateTimeHandler() : scoped_observer_(this) {}
+DateTimeHandler::DateTimeHandler() {}
DateTimeHandler::~DateTimeHandler() = default;
@@ -89,7 +89,7 @@
void DateTimeHandler::OnJavascriptAllowed() {
SystemClockClient* system_clock_client = SystemClockClient::Get();
- scoped_observer_.Add(system_clock_client);
+ scoped_observation_.Observe(system_clock_client);
SystemClockCanSetTimeChanged(system_clock_client->CanSetTime());
// The system time zone policy disables auto-detection entirely. (However,
@@ -111,7 +111,7 @@
}
void DateTimeHandler::OnJavascriptDisallowed() {
- scoped_observer_.RemoveAll();
+ scoped_observation_.Reset();
system_timezone_policy_subscription_ = {};
local_state_pref_change_registrar_.RemoveAll();
}
diff --git a/chrome/browser/ui/webui/settings/chromeos/date_time_handler.h b/chrome/browser/ui/webui/settings/chromeos/date_time_handler.h
index e301d09..b9fa321 100644
--- a/chrome/browser/ui/webui/settings/chromeos/date_time_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/date_time_handler.h
@@ -9,7 +9,7 @@
#include "base/macros.h"
#include "base/memory/weak_ptr.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/chromeos/settings/cros_settings.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
#include "chromeos/dbus/system_clock/system_clock_client.h"
@@ -64,8 +64,8 @@
// Used to listen to changes to the system time zone detection policy.
PrefChangeRegistrar local_state_pref_change_registrar_;
- ScopedObserver<SystemClockClient, SystemClockClient::Observer>
- scoped_observer_;
+ base::ScopedObservation<SystemClockClient, SystemClockClient::Observer>
+ scoped_observation_{this};
base::WeakPtrFactory<DateTimeHandler> weak_ptr_factory_{this};
DISALLOW_COPY_AND_ASSIGN(DateTimeHandler);
diff --git a/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.cc b/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.cc
index 21f56f9..73f3ecb 100644
--- a/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.cc
@@ -82,11 +82,11 @@
}
void KeyboardHandler::OnJavascriptAllowed() {
- observer_.Add(ui::DeviceDataManager::GetInstance());
+ observation_.Observe(ui::DeviceDataManager::GetInstance());
}
void KeyboardHandler::OnJavascriptDisallowed() {
- observer_.RemoveAll();
+ observation_.Reset();
}
void KeyboardHandler::OnInputDeviceConfigurationChanged(
diff --git a/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.h b/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.h
index ee6c480..403303c8 100644
--- a/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/device_keyboard_handler.h
@@ -6,7 +6,7 @@
#define CHROME_BROWSER_UI_WEBUI_SETTINGS_CHROMEOS_DEVICE_KEYBOARD_HANDLER_H_
#include "base/macros.h"
-#include "base/scoped_observer.h"
+#include "base/scoped_observation.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
#include "ui/events/devices/device_data_manager.h"
#include "ui/events/devices/input_device_event_observer.h"
@@ -68,8 +68,8 @@
// Sends the UI a message about whether hardware keyboard are attached.
void UpdateKeyboards();
- ScopedObserver<ui::DeviceDataManager, ui::InputDeviceEventObserver> observer_{
- this};
+ base::ScopedObservation<ui::DeviceDataManager, ui::InputDeviceEventObserver>
+ observation_{this};
DISALLOW_COPY_AND_ASSIGN(KeyboardHandler);
};
diff --git a/chrome/browser/ui/webui/settings/chromeos/device_name_handler.h b/chrome/browser/ui/webui/settings/chromeos/device_name_handler.h
index 62d32df4..79b4f67 100644
--- a/chrome/browser/ui/webui/settings/chromeos/device_name_handler.h
+++ b/chrome/browser/ui/webui/settings/chromeos/device_name_handler.h
@@ -6,7 +6,6 @@
#define CHROME_BROWSER_UI_WEBUI_SETTINGS_CHROMEOS_DEVICE_NAME_HANDLER_H_
#include "base/macros.h"
-#include "base/scoped_observer.h"
#include "chrome/browser/ui/webui/settings/settings_page_ui_handler.h"
namespace base {
diff --git a/chrome/browser/ui/webui/settings/chromeos/device_power_handler.cc b/chrome/browser/ui/webui/settings/chromeos/device_power_handler.cc
index 00f86112..6bf1eca 100644
--- a/chrome/browser/ui/webui/settings/chromeos/device_power_handler.cc
+++ b/chrome/browser/ui/webui/settings/chromeos/device_power_handler.cc
@@ -162,7 +162,7 @@
void PowerHandler::OnJavascriptAllowed() {
PowerManagerClient* power_manager_client = PowerManagerClient::Get();
- power_manager_client_observer_.Add(power_manager_client);
+ power_manager_client_observation_.Observe(power_manager_client);
power_manager_client->GetSwitchStates(base::BindOnce(
&PowerHandler::OnGotSwitchStates, weak_ptr_factory_.GetWeakPtr()));
@@ -187,7 +187,7 @@
}
void PowerHandler::OnJavascriptDisallowed() {
- power_manager_client_observer_.RemoveAll();
+ power_manager_client_observation_.Reset();
pref_change_registrar_.reset();
}
diff --git