Index: ui/events/devices/device_data_manager.cc |
diff --git a/ui/events/devices/device_data_manager.cc b/ui/events/devices/device_data_manager.cc |
index e725736df3923ad538e69795a0d10fd586c5e87b..8633ddf9dc513b4768c85ea6e2937e21f51b09b8 100644 |
--- a/ui/events/devices/device_data_manager.cc |
+++ b/ui/events/devices/device_data_manager.cc |
@@ -35,7 +35,8 @@ DeviceDataManager::~DeviceDataManager() { |
DeviceDataManager* DeviceDataManager::instance() { return instance_; } |
void DeviceDataManager::set_instance(DeviceDataManager* instance) { |
- CHECK(!instance_) << "Can not set multiple instances of DeviceDataManager"; |
+ CHECK(!instance || !instance_) |
Alexei Svitkine (slow)
2015/07/07 22:00:59
Nit: I think this should be a DCHECK().
bruthig
2015/07/08 20:29:52
Done.
|
+ << "Can not set multiple instances of DeviceDataManager"; |
sadrul
2015/07/07 22:04:39
Have separate DCHECK()s with the right message ins
bruthig
2015/07/08 20:29:52
Actually the logic is, 'instance' can be null, or
|
instance_ = instance; |
} |
@@ -46,6 +47,7 @@ void DeviceDataManager::CreateInstance() { |
set_instance(new DeviceDataManager()); |
+ // TODO(bruthig): Replace the DeleteInstance callbacks with explicit calls. |
base::AtExitManager::RegisterTask(base::Bind(DeleteInstance)); |
} |
@@ -132,9 +134,7 @@ void DeviceDataManager::OnTouchscreenDevicesUpdated( |
return; |
} |
touchscreen_devices_ = devices; |
- FOR_EACH_OBSERVER(InputDeviceEventObserver, |
- observers_, |
- OnTouchscreenDeviceConfigurationChanged()); |
+ NotifyObserversTouchscreenDeviceConfigurationChanged(); |
} |
void DeviceDataManager::OnKeyboardDevicesUpdated( |
@@ -147,9 +147,7 @@ void DeviceDataManager::OnKeyboardDevicesUpdated( |
return; |
} |
keyboard_devices_ = devices; |
- FOR_EACH_OBSERVER(InputDeviceEventObserver, |
- observers_, |
- OnKeyboardDeviceConfigurationChanged()); |
+ NotifyObserversKeyboardDeviceConfigurationChanged(); |
} |
void DeviceDataManager::OnMouseDevicesUpdated( |
@@ -162,9 +160,7 @@ void DeviceDataManager::OnMouseDevicesUpdated( |
return; |
} |
mouse_devices_ = devices; |
- FOR_EACH_OBSERVER(InputDeviceEventObserver, |
- observers_, |
- OnMouseDeviceConfigurationChanged()); |
+ NotifyObserversMouseDeviceConfigurationChanged(); |
} |
void DeviceDataManager::OnTouchpadDevicesUpdated( |
@@ -177,17 +173,39 @@ void DeviceDataManager::OnTouchpadDevicesUpdated( |
return; |
} |
touchpad_devices_ = devices; |
- FOR_EACH_OBSERVER(InputDeviceEventObserver, |
- observers_, |
- OnTouchpadDeviceConfigurationChanged()); |
+ NotifyObserversTouchpadDeviceConfigurationChanged(); |
} |
void DeviceDataManager::OnDeviceListsComplete() { |
if (!device_lists_complete_) { |
device_lists_complete_ = true; |
+ NotifyObserversDeviceListsComplete(); |
+ } |
+} |
+ |
+void DeviceDataManager::NotifyObserversTouchscreenDeviceConfigurationChanged() { |
+ FOR_EACH_OBSERVER(InputDeviceEventObserver, observers_, |
+ OnTouchscreenDeviceConfigurationChanged()); |
+} |
+ |
+void DeviceDataManager::NotifyObserversKeyboardDeviceConfigurationChanged() { |
+ FOR_EACH_OBSERVER(InputDeviceEventObserver, observers_, |
+ OnKeyboardDeviceConfigurationChanged()); |
+} |
+ |
+void DeviceDataManager::NotifyObserversMouseDeviceConfigurationChanged() { |
+ FOR_EACH_OBSERVER(InputDeviceEventObserver, observers_, |
+ OnMouseDeviceConfigurationChanged()); |
+} |
+ |
+void DeviceDataManager::NotifyObserversTouchpadDeviceConfigurationChanged() { |
+ FOR_EACH_OBSERVER(InputDeviceEventObserver, observers_, |
+ OnTouchpadDeviceConfigurationChanged()); |
+} |
+ |
+void DeviceDataManager::NotifyObserversDeviceListsComplete() { |
FOR_EACH_OBSERVER(InputDeviceEventObserver, observers_, |
OnDeviceListsComplete()); |
- } |
} |
void DeviceDataManager::AddObserver(InputDeviceEventObserver* observer) { |