mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2026-03-27 15:10:38 +01:00
Compare commits
16 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9da9118edc | ||
|
|
be762cc492 | ||
|
|
bd1f8c8587 | ||
|
|
806b0908af | ||
|
|
abc0dfbdea | ||
|
|
7d25d9e1c6 | ||
|
|
c730840ad6 | ||
|
|
bb07025144 | ||
|
|
0cfabd6d87 | ||
|
|
a2f411bc4b | ||
|
|
62a04b5d6d | ||
|
|
e2e8db17ec | ||
|
|
c3dbb867b1 | ||
|
|
e864ca3e49 | ||
|
|
b31c5c9d67 | ||
|
|
147fd9bf18 |
16 changed files with 77 additions and 12 deletions
14
README.md
14
README.md
|
|
@ -15,11 +15,11 @@ User documentation
|
|||
------------------
|
||||
|
||||
Documentation explaining features available in libinput is available
|
||||
[here](https://wayland.freedesktop.org/libinput/doc/latest/pages.html).
|
||||
[here](https://wayland.freedesktop.org/libinput/doc/latest/features.html).
|
||||
|
||||
This includes the [FAQ](https://wayland.freedesktop.org/libinput/doc/latest/faq.html)
|
||||
This includes the [FAQ](https://wayland.freedesktop.org/libinput/doc/latest/faqs.html)
|
||||
and the instructions on
|
||||
[reporting bugs](https://wayland.freedesktop.org/libinput/doc/latest/reporting_bugs.html).
|
||||
[reporting bugs](https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html).
|
||||
|
||||
|
||||
Source code
|
||||
|
|
@ -32,7 +32,7 @@ For a list of current and past releases visit:
|
|||
https://www.freedesktop.org/wiki/Software/libinput/
|
||||
|
||||
Build instructions:
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/building_libinput.html
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/building.html
|
||||
|
||||
Reporting Bugs
|
||||
--------------
|
||||
|
|
@ -49,11 +49,11 @@ for more info.
|
|||
Documentation
|
||||
-------------
|
||||
|
||||
- Developer API documentation: https://wayland.freedesktop.org/libinput/doc/latest/modules.html
|
||||
- Developer API documentation: https://wayland.freedesktop.org/libinput/doc/latest/development.html
|
||||
- High-level documentation about libinput's features:
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/pages.html
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/features.html
|
||||
- Build instructions:
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/building_libinput.html
|
||||
https://wayland.freedesktop.org/libinput/doc/latest/building.html
|
||||
- Documentation for previous versions of libinput: https://wayland.freedesktop.org/libinput/doc/
|
||||
|
||||
Examples of how to use libinput are the debugging tools in the libinput
|
||||
|
|
|
|||
|
|
@ -228,7 +228,7 @@ device capabilities together with the event stream from the kernel. On our
|
|||
side, this allows us to recreate a virtual device identical to your device
|
||||
and re-play the event sequence, hopefully triggering the same bug.
|
||||
|
||||
evemu-record takes a <tt>/dev/input/eventX</tt> event node, but without arguments
|
||||
evemu-record takes a ``/dev/input/eventX`` event node, but without arguments
|
||||
it will simply show the list of devices and let you select: ::
|
||||
|
||||
$ sudo evemu-record > scroll.evemu
|
||||
|
|
@ -288,7 +288,7 @@ My bug was closed as fixed, what now?
|
|||
------------------------------------------------------------------------------
|
||||
|
||||
libinput's policy on closing bugs is: once the fix for a given bug is on git
|
||||
master, the bug is considered fixed and the bugzilla entry will be closed
|
||||
master, the bug is considered fixed and the gitlab issue will be closed
|
||||
accordingly.
|
||||
|
||||
Of course, unless you actually run git master, the bug will continue to
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
project('libinput', 'c', 'cpp',
|
||||
version : '1.12.3',
|
||||
version : '1.12.6',
|
||||
license : 'MIT/Expat',
|
||||
default_options : [ 'c_std=gnu99', 'warning_level=2' ],
|
||||
meson_version : '>= 0.41.0')
|
||||
|
|
@ -251,6 +251,7 @@ quirks_data = [
|
|||
'quirks/10-generic-trackball.quirks',
|
||||
'quirks/30-vendor-aiptek.quirks',
|
||||
'quirks/30-vendor-alps.quirks',
|
||||
'quirks/30-vendor-contour.quirks',
|
||||
'quirks/30-vendor-cyapa.quirks',
|
||||
'quirks/30-vendor-elantech.quirks',
|
||||
'quirks/30-vendor-huion.quirks',
|
||||
|
|
|
|||
11
quirks/30-vendor-contour.quirks
Normal file
11
quirks/30-vendor-contour.quirks
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
[Contour Design RollerMouse Free 2]
|
||||
MatchVendor=0x0b33
|
||||
MatchProduct=0x0401
|
||||
MatchUdevType=mouse
|
||||
ModelBouncingKeys=1
|
||||
|
||||
[Contour Design RollerMouse Re:d]
|
||||
MatchVendor=0x0b33
|
||||
MatchProduct=0x1000
|
||||
MatchUdevType=mouse
|
||||
ModelBouncingKeys=1
|
||||
|
|
@ -3,3 +3,7 @@ MatchName=AT Translated Set 2 keyboard
|
|||
MatchDMIModalias=dmi:*svnAcer:pnSwitchSA5-271:*
|
||||
ModelTabletModeNoSuspend=1
|
||||
|
||||
[Acer Spin 5]
|
||||
MatchName=AT Translated Set 2 keyboard
|
||||
MatchDMIModalias=dmi:*svnAcer:pnSpinSP513-52N:*
|
||||
ModelTabletModeNoSuspend=1
|
||||
|
|
@ -52,3 +52,10 @@ MatchBus=usb
|
|||
MatchVendor=0x05AC
|
||||
MatchProduct=0x0237
|
||||
AttrPalmSizeThreshold=1000
|
||||
|
||||
[Apple Laptop Touchpad (MacBookPro11,2 among others)]
|
||||
MatchUdevType=touchpad
|
||||
MatchBus=usb
|
||||
MatchVendor=0x5AC
|
||||
MatchProduct=0x0262
|
||||
AttrPalmSizeThreshold=1600
|
||||
|
|
|
|||
|
|
@ -17,3 +17,15 @@ AttrPressureRange=24:10
|
|||
MatchName=*ETPS/2 Elantech Touchpad*
|
||||
MatchDMIModalias=dmi:*svnASUSTeKCOMPUTERINC.:pnUX302LA:*
|
||||
AttrEventCodeDisable=ABS_MT_PRESSURE;ABS_PRESSURE;
|
||||
|
||||
# Asus VivoBook Flip 14 TP412UA tablet switch seems misbehaving, always
|
||||
# indicating tablet position
|
||||
[Asus TP412UA Keyboard]
|
||||
MatchName=AT Translated Set 2 keyboard
|
||||
MatchDMIModalias=dmi:*svnASUSTeKCOMPUTERINC.:pnVivoBookFlip14_ASUSFlipTP412UA:*
|
||||
ModelTabletModeNoSuspend=1
|
||||
|
||||
[Asus TP412UA Touchpad]
|
||||
MatchName=*ELAN*Touchpad*
|
||||
MatchDMIModalias=dmi:*svnASUSTeKCOMPUTERINC.:pnVivoBookFlip14_ASUSFlipTP412UA:*
|
||||
ModelTabletModeNoSuspend=1
|
||||
|
|
|
|||
|
|
@ -33,3 +33,11 @@ ModelHPZBookStudioG3=1
|
|||
MatchName=*Cypress APA Trackpad *cyapa*
|
||||
MatchDMIModalias=dmi:*svnHewlett-Packard*:pnFalco*
|
||||
AttrPressureRange=12:8
|
||||
|
||||
[HP Spectre x360 Convertable 15-bl1xx]
|
||||
MatchUdevType=touchpad
|
||||
MatchName=*SynPS/2 Synaptics TouchPad
|
||||
MatchDMIModalias=dmi:*svnHP:pnHPSpectrex360Convertible15-bl1XX:*
|
||||
AttrPressureRange=55:40
|
||||
AttrThumbPressureThreshold=90
|
||||
AttrPalmPressureThreshold=100
|
||||
|
|
|
|||
|
|
@ -20,6 +20,11 @@ MatchName=Synaptics tm2964-001
|
|||
MatchDMIModalias=dmi:*svnLENOVO:*:pvrThinkPadT440p*
|
||||
ModelLenovoT450Touchpad=1
|
||||
|
||||
[Lenovo T480s Touchpad]
|
||||
MatchName=Elan Touchpad
|
||||
MatchDMIModalias=dmi:*svnLENOVO:*:pvrThinkPadT480s*
|
||||
ModelLenovoT480sTouchpad=1
|
||||
|
||||
[Lenovo X200 Trackpoint]
|
||||
MatchName=*TPPS/2 IBM TrackPoint
|
||||
MatchDMIModalias=dmi:*svnLENOVO:*pvrThinkPadX20?:*
|
||||
|
|
|
|||
|
|
@ -2504,6 +2504,10 @@ tp_pair_tablet_mode_switch(struct evdev_device *touchpad,
|
|||
if (touchpad->tags & EVDEV_TAG_EXTERNAL_TOUCHPAD)
|
||||
return;
|
||||
|
||||
if (evdev_device_has_model_quirk(touchpad,
|
||||
QUIRK_MODEL_TABLET_MODE_NO_SUSPEND))
|
||||
return;
|
||||
|
||||
evdev_log_debug(touchpad,
|
||||
"tablet_mode_switch: activated for %s<->%s\n",
|
||||
touchpad->devname,
|
||||
|
|
|
|||
|
|
@ -1908,6 +1908,12 @@ evdev_pre_configure_model_quirks(struct evdev_device *device)
|
|||
libevdev_enable_property(device->evdev,
|
||||
INPUT_PROP_BUTTONPAD);
|
||||
|
||||
/* Touchpad is a clickpad but INPUT_PROP_BUTTONPAD is not set, see
|
||||
* https://gitlab.freedesktop.org/libinput/libinput/issues/177 */
|
||||
if (evdev_device_has_model_quirk(device, QUIRK_MODEL_LENOVO_T480S_TOUCHPAD))
|
||||
libevdev_enable_property(device->evdev,
|
||||
INPUT_PROP_BUTTONPAD);
|
||||
|
||||
/* Touchpad claims to have 4 slots but only ever sends 2
|
||||
* https://bugs.freedesktop.org/show_bug.cgi?id=98100 */
|
||||
if (evdev_device_has_model_quirk(device, QUIRK_MODEL_HP_ZBOOK_STUDIO_G3))
|
||||
|
|
|
|||
|
|
@ -3159,7 +3159,8 @@ libinput_set_user_data(struct libinput *libinput,
|
|||
*
|
||||
* @param libinput A previously initialized libinput context
|
||||
* @return The caller-specific data previously assigned in
|
||||
* libinput_create_udev().
|
||||
* libinput_set_user_data(), libinput_path_create_context() or
|
||||
* libinput_udev_create_context().
|
||||
*/
|
||||
void *
|
||||
libinput_get_user_data(struct libinput *libinput);
|
||||
|
|
|
|||
|
|
@ -241,6 +241,7 @@ quirk_get_name(enum quirk q)
|
|||
case QUIRK_MODEL_HP_ZBOOK_STUDIO_G3: return "ModelHPZBookStudioG3";
|
||||
case QUIRK_MODEL_LENOVO_SCROLLPOINT: return "ModelLenovoScrollPoint";
|
||||
case QUIRK_MODEL_LENOVO_T450_TOUCHPAD: return "ModelLenovoT450Touchpad";
|
||||
case QUIRK_MODEL_LENOVO_T480S_TOUCHPAD: return "ModelLenovoT480sTouchpad";
|
||||
case QUIRK_MODEL_LENOVO_X230: return "ModelLenovoX230";
|
||||
case QUIRK_MODEL_SYNAPTICS_SERIAL_TOUCHPAD: return "ModelSynapticsSerialTouchpad";
|
||||
case QUIRK_MODEL_SYSTEM76_BONOBO: return "ModelSystem76Bonobo";
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@ enum quirk {
|
|||
QUIRK_MODEL_HP_ZBOOK_STUDIO_G3,
|
||||
QUIRK_MODEL_LENOVO_SCROLLPOINT,
|
||||
QUIRK_MODEL_LENOVO_T450_TOUCHPAD,
|
||||
QUIRK_MODEL_LENOVO_T480S_TOUCHPAD,
|
||||
QUIRK_MODEL_LENOVO_X230,
|
||||
QUIRK_MODEL_SYNAPTICS_SERIAL_TOUCHPAD,
|
||||
QUIRK_MODEL_SYSTEM76_BONOBO,
|
||||
|
|
|
|||
|
|
@ -455,7 +455,7 @@ def main(args):
|
|||
except PermissionError as e:
|
||||
print('Permission denied, please re-run as root')
|
||||
except InvalidConfigurationError as e:
|
||||
print('Error: {}'.format(e.message))
|
||||
print('Error: {}'.format(e))
|
||||
except KeyboardInterrupt as e:
|
||||
print('Exited on user request')
|
||||
|
||||
|
|
|
|||
|
|
@ -53,6 +53,10 @@ This option requires that a
|
|||
\fB\-\-output-file\fR is specified and that all devices to be recorded are
|
||||
given on the commandline.
|
||||
.TP 8
|
||||
.B \-\-show\-keycodes
|
||||
Show keycodes as-is in the recording. By default, common keys are obfuscated
|
||||
and printed as \fBKEY_A\fR to avoid information leaks.
|
||||
.TP 8
|
||||
.B \-\-with-libinput
|
||||
Record libinput events alongside device events.
|
||||
.B THIS FEATURE IS EXPERIMENTAL.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue