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 0d9d04c9170a89568f1afa5fad64e646476ef954..dd9b3acb7ab3d894a58a41e1f04d70a39090dcec 100644 |
--- a/ui/events/devices/x11/device_data_manager_x11.cc |
+++ b/ui/events/devices/x11/device_data_manager_x11.cc |
@@ -560,10 +560,17 @@ void DeviceDataManagerX11::GetScrollClassOffsets(const XEvent& xev, |
} |
} |
-void DeviceDataManagerX11::InvalidateScrollClasses() { |
- for (int i = 0; i < kMaxDeviceNum; i++) { |
- scroll_data_[i].horizontal.seen = false; |
- scroll_data_[i].vertical.seen = false; |
+void DeviceDataManagerX11::InvalidateScrollClasses(int device_id) { |
+ if (device_id == -1) { |
+ for (int i = 0; i < kMaxDeviceNum; i++) { |
+ scroll_data_[i].horizontal.seen = false; |
+ scroll_data_[i].vertical.seen = false; |
+ } |
+ } else { |
+ if (device_id < 0 || device_id >= kMaxDeviceNum) |
+ return; |
+ scroll_data_[device_id].horizontal.seen = false; |
+ scroll_data_[device_id].vertical.seen = false; |
} |
} |