| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "ui/events/x/device_data_manager_x11.h" | 5 #include "ui/events/x/device_data_manager_x11.h" |
| 6 | 6 |
| 7 #include <X11/extensions/XInput.h> | 7 #include <X11/extensions/XInput.h> |
| 8 #include <X11/extensions/XInput2.h> | 8 #include <X11/extensions/XInput2.h> |
| 9 #include <X11/Xlib.h> | 9 #include <X11/Xlib.h> |
| 10 | 10 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 56 // Cros metrics gesture from touchpad | 56 // Cros metrics gesture from touchpad |
| 57 #define AXIS_LABEL_PROP_ABS_METRICS_TYPE "Abs Metrics Type" | 57 #define AXIS_LABEL_PROP_ABS_METRICS_TYPE "Abs Metrics Type" |
| 58 #define AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA1 "Abs Dbl Metrics Data 1" | 58 #define AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA1 "Abs Dbl Metrics Data 1" |
| 59 #define AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA2 "Abs Dbl Metrics Data 2" | 59 #define AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA2 "Abs Dbl Metrics Data 2" |
| 60 | 60 |
| 61 // Touchscreen multi-touch | 61 // Touchscreen multi-touch |
| 62 #define AXIS_LABEL_ABS_MT_TOUCH_MAJOR "Abs MT Touch Major" | 62 #define AXIS_LABEL_ABS_MT_TOUCH_MAJOR "Abs MT Touch Major" |
| 63 #define AXIS_LABEL_ABS_MT_TOUCH_MINOR "Abs MT Touch Minor" | 63 #define AXIS_LABEL_ABS_MT_TOUCH_MINOR "Abs MT Touch Minor" |
| 64 #define AXIS_LABEL_ABS_MT_ORIENTATION "Abs MT Orientation" | 64 #define AXIS_LABEL_ABS_MT_ORIENTATION "Abs MT Orientation" |
| 65 #define AXIS_LABEL_ABS_MT_PRESSURE "Abs MT Pressure" | 65 #define AXIS_LABEL_ABS_MT_PRESSURE "Abs MT Pressure" |
| 66 #define AXIS_LABEL_ABS_MT_POSITION_X "Abs MT Position X" |
| 67 #define AXIS_LABEL_ABS_MT_POSITION_Y "Abs MT Position Y" |
| 66 #define AXIS_LABEL_ABS_MT_TRACKING_ID "Abs MT Tracking ID" | 68 #define AXIS_LABEL_ABS_MT_TRACKING_ID "Abs MT Tracking ID" |
| 67 #define AXIS_LABEL_TOUCH_TIMESTAMP "Touch Timestamp" | 69 #define AXIS_LABEL_TOUCH_TIMESTAMP "Touch Timestamp" |
| 68 | 70 |
| 69 // When you add new data types, please make sure the order here is aligned | 71 // When you add new data types, please make sure the order here is aligned |
| 70 // with the order in the DataType enum in the header file because we assume | 72 // with the order in the DataType enum in the header file because we assume |
| 71 // they are in sync when updating the device list (see UpdateDeviceList). | 73 // they are in sync when updating the device list (see UpdateDeviceList). |
| 72 const char* kCachedAtoms[] = { | 74 const char* kCachedAtoms[] = { |
| 73 AXIS_LABEL_PROP_REL_HWHEEL, | 75 AXIS_LABEL_PROP_REL_HWHEEL, |
| 74 AXIS_LABEL_PROP_REL_WHEEL, | 76 AXIS_LABEL_PROP_REL_WHEEL, |
| 75 AXIS_LABEL_PROP_ABS_DBL_ORDINAL_X, | 77 AXIS_LABEL_PROP_ABS_DBL_ORDINAL_X, |
| 76 AXIS_LABEL_PROP_ABS_DBL_ORDINAL_Y, | 78 AXIS_LABEL_PROP_ABS_DBL_ORDINAL_Y, |
| 77 AXIS_LABEL_PROP_ABS_DBL_START_TIME, | 79 AXIS_LABEL_PROP_ABS_DBL_START_TIME, |
| 78 AXIS_LABEL_PROP_ABS_DBL_END_TIME, | 80 AXIS_LABEL_PROP_ABS_DBL_END_TIME, |
| 79 AXIS_LABEL_PROP_ABS_DBL_FLING_VX, | 81 AXIS_LABEL_PROP_ABS_DBL_FLING_VX, |
| 80 AXIS_LABEL_PROP_ABS_DBL_FLING_VY, | 82 AXIS_LABEL_PROP_ABS_DBL_FLING_VY, |
| 81 AXIS_LABEL_PROP_ABS_FLING_STATE, | 83 AXIS_LABEL_PROP_ABS_FLING_STATE, |
| 82 AXIS_LABEL_PROP_ABS_METRICS_TYPE, | 84 AXIS_LABEL_PROP_ABS_METRICS_TYPE, |
| 83 AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA1, | 85 AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA1, |
| 84 AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA2, | 86 AXIS_LABEL_PROP_ABS_DBL_METRICS_DATA2, |
| 85 AXIS_LABEL_PROP_ABS_FINGER_COUNT, | 87 AXIS_LABEL_PROP_ABS_FINGER_COUNT, |
| 86 AXIS_LABEL_ABS_MT_TOUCH_MAJOR, | 88 AXIS_LABEL_ABS_MT_TOUCH_MAJOR, |
| 87 AXIS_LABEL_ABS_MT_TOUCH_MINOR, | 89 AXIS_LABEL_ABS_MT_TOUCH_MINOR, |
| 88 AXIS_LABEL_ABS_MT_ORIENTATION, | 90 AXIS_LABEL_ABS_MT_ORIENTATION, |
| 89 AXIS_LABEL_ABS_MT_PRESSURE, | 91 AXIS_LABEL_ABS_MT_PRESSURE, |
| 92 AXIS_LABEL_ABS_MT_POSITION_X, |
| 93 AXIS_LABEL_ABS_MT_POSITION_Y, |
| 90 AXIS_LABEL_ABS_MT_TRACKING_ID, | 94 AXIS_LABEL_ABS_MT_TRACKING_ID, |
| 91 AXIS_LABEL_TOUCH_TIMESTAMP, | 95 AXIS_LABEL_TOUCH_TIMESTAMP, |
| 92 | 96 |
| 93 NULL | 97 NULL |
| 94 }; | 98 }; |
| 95 | 99 |
| 96 // Constants for checking if a data type lies in the range of CMT/Touch data | 100 // Constants for checking if a data type lies in the range of CMT/Touch data |
| 97 // types. | 101 // types. |
| 98 const int kCMTDataTypeStart = ui::DeviceDataManagerX11::DT_CMT_SCROLL_X; | 102 const int kCMTDataTypeStart = ui::DeviceDataManagerX11::DT_CMT_SCROLL_X; |
| 99 const int kCMTDataTypeEnd = ui::DeviceDataManagerX11::DT_CMT_FINGER_COUNT; | 103 const int kCMTDataTypeEnd = ui::DeviceDataManagerX11::DT_CMT_FINGER_COUNT; |
| (...skipping 603 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 703 case GenericEvent: | 707 case GenericEvent: |
| 704 return blocked_devices_.test( | 708 return blocked_devices_.test( |
| 705 static_cast<XIDeviceEvent*>(native_event->xcookie.data)->sourceid); | 709 static_cast<XIDeviceEvent*>(native_event->xcookie.data)->sourceid); |
| 706 default: | 710 default: |
| 707 break; | 711 break; |
| 708 } | 712 } |
| 709 return false; | 713 return false; |
| 710 } | 714 } |
| 711 | 715 |
| 712 } // namespace ui | 716 } // namespace ui |
| OLD | NEW |