Bug 94015 - Disabling "Disable While Typing" disables touchpad
Summary: Disabling "Disable While Typing" disables touchpad
Status: RESOLVED FIXED
Alias: None
Product: Wayland
Classification: Unclassified
Component: libinput (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-05 23:37 UTC by Jan Alexander Steffens (heftig)
Modified: 2016-02-08 22:23 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Jan Alexander Steffens (heftig) 2016-02-05 23:37:56 UTC
Disabling "Disable While Typing" via "xinput set-int-prop 11 292 8 0" actually disables the touchpad instead. It behaves as if it is constantly in typing state.

libinput 1.1.6
xf86-input-libinput 0.16.0
Comment 1 Peter Hutterer 2016-02-07 21:46:00 UTC
A few general comments: use set-prop instead of set-int-prop, xinput will pick the right format if the property already exists. And use the device name and property name, because the above is indecipherable for me :) and won't work consistently, but this will work the same every time:
   xinput set-prop "some device name" "libinput whatever property name" 1 


so, which device is 11? I'll need an evemu-describe from that touchpad, and the output of libinput-debug-events --enable-dwt
Comment 2 Jan Alexander Steffens (heftig) 2016-02-08 00:58:05 UTC
The command is equivalent to:
xinput set-prop "SynPS/2 Synaptics TouchPad" "libinput Disable While Typing Enabled" 0


xinput:

⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]


evemu-describe:

# EVEMU 1.3
# Kernel: 4.4.1-1-zen
# DMI: dmi:bvnAmericanMegatrendsInc.:bvr4.6.5:bd09/11/2014:svnNotebook:pnW740SU:pvrNotApplicable:rvnNotebook:rnW740SU:rvrNotApplicable:cvnNotebook:ct9:cvrN/A:
# Input device name: "SynPS/2 Synaptics TouchPad"
# Input device ID: bus 0x11 vendor 0x02 product 0x07 version 0x1b1
# Supported events:
#   Event type 0 (EV_SYN)
#     Event code 0 (SYN_REPORT)
#     Event code 1 (SYN_CONFIG)
#     Event code 2 (SYN_MT_REPORT)
#     Event code 3 (SYN_DROPPED)
#     Event code 4 ((null))
#     Event code 5 ((null))
#     Event code 6 ((null))
#     Event code 7 ((null))
#     Event code 8 ((null))
#     Event code 9 ((null))
#     Event code 10 ((null))
#     Event code 11 ((null))
#     Event code 12 ((null))
#     Event code 13 ((null))
#     Event code 14 ((null))
#   Event type 1 (EV_KEY)
#     Event code 272 (BTN_LEFT)
#     Event code 325 (BTN_TOOL_FINGER)
#     Event code 328 (BTN_TOOL_QUINTTAP)
#     Event code 330 (BTN_TOUCH)
#     Event code 333 (BTN_TOOL_DOUBLETAP)
#     Event code 334 (BTN_TOOL_TRIPLETAP)
#     Event code 335 (BTN_TOOL_QUADTAP)
#   Event type 3 (EV_ABS)
#     Event code 0 (ABS_X)
#       Value   2092
#       Min     1262
#       Max     5680
#       Fuzz       0
#       Flat       0
#       Resolution 46
#     Event code 1 (ABS_Y)
#       Value   2613
#       Min     1124
#       Max     4728
#       Fuzz       0
#       Flat       0
#       Resolution 62
#     Event code 24 (ABS_PRESSURE)
#       Value      0
#       Min        0
#       Max      255
#       Fuzz       0
#       Flat       0
#       Resolution 0
#     Event code 28 (ABS_TOOL_WIDTH)
#       Value      0
#       Min        0
#       Max       15
#       Fuzz       0
#       Flat       0
#       Resolution 0
#     Event code 47 (ABS_MT_SLOT)
#       Value      0
#       Min        0
#       Max        1
#       Fuzz       0
#       Flat       0
#       Resolution 0
#     Event code 53 (ABS_MT_POSITION_X)
#       Value      0
#       Min     1262
#       Max     5680
#       Fuzz       8
#       Flat       0
#       Resolution 46
#     Event code 54 (ABS_MT_POSITION_Y)
#       Value      0
#       Min     1124
#       Max     4728
#       Fuzz       8
#       Flat       0
#       Resolution 62
#     Event code 57 (ABS_MT_TRACKING_ID)
#       Value      0
#       Min        0
#       Max    65535
#       Fuzz       0
#       Flat       0
#       Resolution 0
#     Event code 58 (ABS_MT_PRESSURE)
#       Value      0
#       Min        0
#       Max      255
#       Fuzz       0
#       Flat       0
#       Resolution 0
# Properties:
#   Property  type 0 (INPUT_PROP_POINTER)
#   Property  type 2 (INPUT_PROP_BUTTONPAD)
N: SynPS/2 Synaptics TouchPad
I: 0011 0002 0007 01b1
P: 05 00 00 00 00 00 00 00
B: 00 0b 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 01 00 00 00 00 00
B: 01 20 e5 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 01 00 00 00 00 00 00 00 00
B: 02 00 00 00 00 00 00 00 00
B: 03 03 00 00 11 00 80 60 06
B: 04 00 00 00 00 00 00 00 00
B: 05 00 00 00 00 00 00 00 00
B: 11 00 00 00 00 00 00 00 00
B: 12 00 00 00 00 00 00 00 00
B: 14 00 00 00 00 00 00 00 00
B: 15 00 00 00 00 00 00 00 00
B: 15 00 00 00 00 00 00 00 00
A: 00 1262 5680 0 0 46
A: 01 1124 4728 0 0 62
A: 18 0 255 0 0 0
A: 1c 0 15 0 0 0
A: 2f 0 1 0 0 0
A: 35 1262 5680 8 0 46
A: 36 1124 4728 8 0 62
A: 39 0 65535 0 0 0
A: 3a 0 255 0 0 0


libinput-debug-events --enable-dwt:

event3  DEVICE_ADDED    Power Button                      seat0 default group1 cap:k
event5  DEVICE_ADDED    Video Bus                         seat0 default group2 cap:k
event0  DEVICE_ADDED    Power Button                      seat0 default group3 cap:k
event1  DEVICE_ADDED    Sleep Button                      seat0 default group4 cap:k
event4  DEVICE_ADDED    AT Translated Set 2 keyboard      seat0 default group5 cap:k
event12 DEVICE_ADDED    SynPS/2 Synaptics TouchPad        seat0 default group6 cap:pg   size 96.04/58.13mm tap(dl off) left scroll-nat scroll-2fg-edge click-buttonareas-clickfinger dwt-on
event12 POINTER_MOTION   +1.15s  14.44/ -1.85
event12 POINTER_MOTION   +1.16s  13.68/ -3.82
event12 POINTER_MOTION   +1.17s   5.22/ -2.95
event12 POINTER_MOTION   +1.18s   1.91/ -1.55
event12 POINTER_MOTION   +1.20s   1.12/ -0.77
event12 POINTER_MOTION   +1.22s   0.86/ -0.06
event12 POINTER_MOTION   +1.23s   0.60/  0.19
event12 POINTER_MOTION   +1.24s   1.71/ -1.91
event4  KEYBOARD_KEY     +8.96s KEY_LEFTCTRL (29) pressed
event4  KEYBOARD_KEY     +8.99s KEY_C (46) pressed
Comment 3 Peter Hutterer 2016-02-08 01:16:37 UTC
weird. I can't quite see how this could even be triggered. Can you restart your X server with -logverbose 10 and then attach the log here. this should show the state transitions as used in libinput.

Also, is this a regression in 1.1.6? If so, can you bisect?
Comment 4 Peter Hutterer 2016-02-08 01:21:02 UTC
ok, nevermind, reproduced it. I was on master where this works fine, it's broken on 1.1.6.
Comment 6 Peter Hutterer 2016-02-08 22:23:54 UTC
commit 0e87dc9af2be104fd6cfa50e5f013068e42666d4
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Mon Feb 8 11:48:51 2016 +1000

    touchpad: fix dwt disabling while a key is still down


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.