| Index: components/physical_web/data_source/physical_web_data_source_impl.cc
|
| diff --git a/components/physical_web/data_source/physical_web_data_source_impl.cc b/components/physical_web/data_source/physical_web_data_source_impl.cc
|
| index 86b4c185a14c34328c6e4c36de6b023f0730e925..1f75d05479322969d0a67a3fd1059dfb95b162b6 100644
|
| --- a/components/physical_web/data_source/physical_web_data_source_impl.cc
|
| +++ b/components/physical_web/data_source/physical_web_data_source_impl.cc
|
| @@ -14,13 +14,19 @@ PhysicalWebDataSourceImpl::PhysicalWebDataSourceImpl() {}
|
| PhysicalWebDataSourceImpl::~PhysicalWebDataSourceImpl() {}
|
|
|
| void PhysicalWebDataSourceImpl::RegisterListener(
|
| - PhysicalWebListener* physical_web_listener) {
|
| - observer_list_.AddObserver(physical_web_listener);
|
| + PhysicalWebListener* physical_web_listener, ScanMode scan_mode) {
|
| + if (!observer_list_.HasObserver(physical_web_listener)) {
|
| + observer_list_.AddObserver(physical_web_listener);
|
| + }
|
| + scan_modes_[physical_web_listener] = scan_mode;
|
| }
|
|
|
| void PhysicalWebDataSourceImpl::UnregisterListener(
|
| PhysicalWebListener* physical_web_listener) {
|
| + if (!observer_list_.HasObserver(physical_web_listener)) return;
|
| +
|
| observer_list_.RemoveObserver(physical_web_listener);
|
| + scan_modes_.erase(physical_web_listener);
|
| }
|
|
|
| void PhysicalWebDataSourceImpl::NotifyOnFound(const GURL& url) {
|
|
|