Index: ui/events/devices/x11/device_data_manager_x11.cc |
diff --git a/ui/events/devices/x11/device_data_manager_x11.cc b/ui/events/devices/x11/device_data_manager_x11.cc |
index 9db81c19c7e88216cf14fb16fceda7c504ddc259..db148e5e7be74dee038784784759514fce3438df 100644 |
--- a/ui/events/devices/x11/device_data_manager_x11.cc |
+++ b/ui/events/devices/x11/device_data_manager_x11.cc |
@@ -230,6 +230,13 @@ void DeviceDataManagerX11::UpdateDeviceList(Display* display) { |
for (int data_type = 0; data_type < DT_LAST_ENTRY; ++data_type) |
atoms[data_type] = atom_cache_.GetAtom(kCachedAtoms[data_type]); |
+ // Find all of the master pointers. |
+ for (int i = 0; i < info_list.count; ++i) { |
+ XIDeviceInfo* info = info_list.devices + i; |
+ if (info->use == XIMasterPointer) |
+ master_pointers_.push_back(info->deviceid); |
+ } |
+ |
for (int i = 0; i < info_list.count; ++i) { |
XIDeviceInfo* info = info_list.devices + i; |