1 /* 2 * Copyright © 2015 Red Hat, Inc. 3 * 4 * Permission to use, copy, modify, distribute, and sell this software 5 * and its documentation for any purpose is hereby granted without 6 * fee, provided that the above copyright notice appear in all copies 7 * and that both that copyright notice and this permission notice 8 * appear in supporting documentation, and that the name of Red Hat 9 * not be used in advertising or publicity pertaining to distribution 10 * of the software without specific, written prior permission. Red 11 * Hat makes no representations about the suitability of this software 12 * for any purpose. It is provided "as is" without express or implied 13 * warranty. 14 * 15 * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 16 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN 17 * NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR 18 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS 19 * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 20 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 21 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 22 */ 23 24 #ifndef _LIBINPUT_PROPERTIES_H_ 25 #define _LIBINPUT_PROPERTIES_H_ 26 27 /* Tapping enabled/disabled: BOOL, 1 value */ 28 #define LIBINPUT_PROP_TAP "libinput Tapping Enabled" 29 30 /* Tapping default enabled/disabled: BOOL, 1 value, read-only */ 31 #define LIBINPUT_PROP_TAP_DEFAULT "libinput Tapping Enabled Default" 32 33 /* Tap drag enabled/disabled: BOOL, 1 value */ 34 #define LIBINPUT_PROP_TAP_DRAG "libinput Tapping Drag Enabled" 35 36 /* Tap drag default enabled/disabled: BOOL, 1 value, read-only */ 37 #define LIBINPUT_PROP_TAP_DRAG_DEFAULT "libinput Tapping Drag Enabled Default" 38 39 /* Tap drag lock enabled/disabled: BOOL, 1 value */ 40 #define LIBINPUT_PROP_TAP_DRAG_LOCK "libinput Tapping Drag Lock Enabled" 41 42 /* Tap drag lock default enabled/disabled: BOOL, 1 value, read-only */ 43 #define LIBINPUT_PROP_TAP_DRAG_LOCK_DEFAULT "libinput Tapping Drag Lock Enabled Default" 44 45 /* Tap button order: BOOL, 2 values in order LRM, LMR, only one may be set 46 at any time */ 47 #define LIBINPUT_PROP_TAP_BUTTONMAP "libinput Tapping Button Mapping Enabled" 48 49 /* Tap button default order: BOOL, 2 values in order LRM, LMR, read-only */ 50 #define LIBINPUT_PROP_TAP_BUTTONMAP_DEFAULT "libinput Tapping Button Mapping Default" 51 52 /* Calibration matrix: FLOAT, 9 values of a 3x3 matrix, in rows */ 53 #define LIBINPUT_PROP_CALIBRATION "libinput Calibration Matrix" 54 55 /* Calibration matrix: FLOAT, 9 values of a 3x3 matrix, in rows, read-only*/ 56 #define LIBINPUT_PROP_CALIBRATION_DEFAULT "libinput Calibration Matrix Default" 57 58 /* Pointer accel speed: FLOAT, 1 value, 32 bit */ 59 #define LIBINPUT_PROP_ACCEL "libinput Accel Speed" 60 61 /* Pointer accel speed: FLOAT, 1 value, 32 bit, read-only*/ 62 #define LIBINPUT_PROP_ACCEL_DEFAULT "libinput Accel Speed Default" 63 64 /* Pointer accel profile: BOOL, 2 values in oder adaptive, flat, 65 * only one is enabled at a time at max, read-only */ 66 #define LIBINPUT_PROP_ACCEL_PROFILES_AVAILABLE "libinput Accel Profiles Available" 67 68 /* Pointer accel profile: BOOL, 2 values in order adaptive, flat, 69 only one is enabled at a time at max, read-only */ 70 #define LIBINPUT_PROP_ACCEL_PROFILE_ENABLED_DEFAULT "libinput Accel Profile Enabled Default" 71 72 /* Pointer accel profile: BOOL, 2 values in order adaptive, flat, 73 only one is enabled at a time at max */ 74 #define LIBINPUT_PROP_ACCEL_PROFILE_ENABLED "libinput Accel Profile Enabled" 75 76 /* Natural scrolling: BOOL, 1 value */ 77 #define LIBINPUT_PROP_NATURAL_SCROLL "libinput Natural Scrolling Enabled" 78 79 /* Natural scrolling: BOOL, 1 value, read-only */ 80 #define LIBINPUT_PROP_NATURAL_SCROLL_DEFAULT "libinput Natural Scrolling Enabled Default" 81 82 /* Send-events mode: BOOL read-only, 2 values in order disabled, 83 disabled-on-external-mouse */ 84 #define LIBINPUT_PROP_SENDEVENTS_AVAILABLE "libinput Send Events Modes Available" 85 86 /* Send-events mode: BOOL, 2 values in order disabled, 87 disabled-on-external-mouse */ 88 #define LIBINPUT_PROP_SENDEVENTS_ENABLED "libinput Send Events Mode Enabled" 89 90 /* Send-events mode: BOOL, 2 values in order disabled, 91 disabled-on-external-mouse, read-only */ 92 #define LIBINPUT_PROP_SENDEVENTS_ENABLED_DEFAULT "libinput Send Events Mode Enabled Default" 93 94 /* Left-handed enabled/disabled: BOOL, 1 value */ 95 #define LIBINPUT_PROP_LEFT_HANDED "libinput Left Handed Enabled" 96 97 /* Left-handed enabled/disabled: BOOL, 1 value, read-only */ 98 #define LIBINPUT_PROP_LEFT_HANDED_DEFAULT "libinput Left Handed Enabled Default" 99 100 /* Scroll method: BOOL read-only, 3 values in order 2fg, edge, button. 101 shows available scroll methods */ 102 #define LIBINPUT_PROP_SCROLL_METHODS_AVAILABLE "libinput Scroll Methods Available" 103 104 /* Scroll method: BOOL, 3 values in order 2fg, edge, button 105 only one is enabled at a time at max */ 106 #define LIBINPUT_PROP_SCROLL_METHOD_ENABLED "libinput Scroll Method Enabled" 107 108 /* Scroll method: BOOL, 3 values in order 2fg, edge, button 109 only one is enabled at a time at max, read-only */ 110 #define LIBINPUT_PROP_SCROLL_METHOD_ENABLED_DEFAULT "libinput Scroll Method Enabled Default" 111 112 /* Scroll button for button scrolling: 32-bit int, 1 value */ 113 #define LIBINPUT_PROP_SCROLL_BUTTON "libinput Button Scrolling Button" 114 115 /* Scroll button for button scrolling: 32-bit int, 1 value, read-only */ 116 #define LIBINPUT_PROP_SCROLL_BUTTON_DEFAULT "libinput Button Scrolling Button Default" 117 118 /* Scroll button lock: BOOL, 1 value, TRUE for enabled, FALSE otherwise */ 119 #define LIBINPUT_PROP_SCROLL_BUTTON_LOCK "libinput Button Scrolling Button Lock Enabled" 120 121 /* Scroll button lock: BOOL, 1 value, TRUE for enabled, FALSE otherwise, read-only*/ 122 #define LIBINPUT_PROP_SCROLL_BUTTON_LOCK_DEFAULT "libinput Button Scrolling Button Lock Enabled Default" 123 124 /* Click method: BOOL read-only, 2 values in order buttonareas, clickfinger 125 shows available click methods */ 126 #define LIBINPUT_PROP_CLICK_METHODS_AVAILABLE "libinput Click Methods Available" 127 128 /* Click method: BOOL, 2 values in order buttonareas, clickfinger 129 only one enabled at a time at max */ 130 #define LIBINPUT_PROP_CLICK_METHOD_ENABLED "libinput Click Method Enabled" 131 132 /* Click method: BOOL, 2 values in order buttonareas, clickfinger 133 only one enabled at a time at max, read-only */ 134 #define LIBINPUT_PROP_CLICK_METHOD_ENABLED_DEFAULT "libinput Click Method Enabled Default" 135 136 /* Middle button emulation: BOOL, 1 value */ 137 #define LIBINPUT_PROP_MIDDLE_EMULATION_ENABLED "libinput Middle Emulation Enabled" 138 139 /* Middle button emulation: BOOL, 1 value, read-only */ 140 #define LIBINPUT_PROP_MIDDLE_EMULATION_ENABLED_DEFAULT "libinput Middle Emulation Enabled Default" 141 142 /* Disable while typing: BOOL, 1 value */ 143 #define LIBINPUT_PROP_DISABLE_WHILE_TYPING "libinput Disable While Typing Enabled" 144 145 /* Disable while typing: BOOL, 1 value, read-only */ 146 #define LIBINPUT_PROP_DISABLE_WHILE_TYPING_DEFAULT "libinput Disable While Typing Enabled Default" 147 148 /* Drag lock buttons, either: 149 CARD8, one value, the meta lock button, or 150 CARD8, n * 2 values, the drag lock pairs with n being the button and n+1 151 the target button number */ 152 #define LIBINPUT_PROP_DRAG_LOCK_BUTTONS "libinput Drag Lock Buttons" 153 154 /* Horizontal scroll events enabled: BOOL, 1 value (0 or 1). 155 * If disabled, horizontal scroll events are discarded */ 156 #define LIBINPUT_PROP_HORIZ_SCROLL_ENABLED "libinput Horizontal Scroll Enabled" 157 158 /* Number of modes each pad mode group has available: CARD8, one for each 159 * pad mode group, read-only. 160 */ 161 #define LIBINPUT_PROP_TABLET_PAD_MODE_GROUPS_AVAILABLE "libinput Pad Mode Groups Modes Available" 162 163 /* Mode each pad mode group is currently in: CARD8, one for each pad mode 164 * group, read-only. 165 */ 166 #define LIBINPUT_PROP_TABLET_PAD_MODE_GROUPS "libinput Pad Mode Groups Modes" 167 168 /* The association of each logical button with the pad mode group: INT8, 169 * one for each logical button. If set to -1 the button cannot be associated 170 * with a mode group. read-only 171 */ 172 #define LIBINPUT_PROP_TABLET_PAD_MODE_GROUP_BUTTONS "libinput Pad Mode Group Buttons" 173 174 /* The association of each logical strip with the pad mode group: INT8, 175 * one for each logical strip. If set to -1 the strip cannot be associated 176 * with a mode group. read-only 177 */ 178 #define LIBINPUT_PROP_TABLET_PAD_MODE_GROUP_STRIPS "libinput Pad Mode Group Strips" 179 180 /* The association of each logical ring with the pad mode group: INT8, 181 * one for each logical ring. If set to -1 the ring cannot be associated 182 * with a mode group. read-only 183 */ 184 #define LIBINPUT_PROP_TABLET_PAD_MODE_GROUP_RINGS "libinput Pad Mode Group Rings" 185 186 /* Device rotation: FLOAT, 1 value, 32 bit */ 187 #define LIBINPUT_PROP_ROTATION_ANGLE "libinput Rotation Angle" 188 189 /* Device rotation: FLOAT, 1 value, 32 bit, read-only */ 190 #define LIBINPUT_PROP_ROTATION_ANGLE_DEFAULT "libinput Rotation Angle Default" 191 192 /* Tablet tool pressure curve: float, 8 values, 32 bit 193 * Value range is [0.0, 1.0], the values specify the x/y of the four 194 * control points for a cubic bezier curve. 195 * Default value: 0.0 0.0 0.0 0.0 1.0 1.0 1.0 1.0 196 */ 197 #define LIBINPUT_PROP_TABLET_TOOL_PRESSURECURVE "libinput Tablet Tool Pressurecurve" 198 199 /* Tablet tool area ratio: CARD32, 2 values, w and h */ 200 #define LIBINPUT_PROP_TABLET_TOOL_AREA_RATIO "libinput Tablet Tool Area Ratio" 201 202 #endif /* _LIBINPUT_PROPERTIES_H_ */ 203