Ubuntu – Touchpad not working while pressing ‘typing’ keys after 16.10 upgrade

keyboardmousetouchpad

I recently upgraded to 16.10 from 16.04 and now the touchpad stops responding while a keyboard key is pressed. These keys exclude the functional keys such as alt, super, ctrl, shift, Fn keys, etc.

On running xinput list, I get

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ DLLC6B2:00 06CB:75BF Touchpad             id=11   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=13   [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)]
    ↳ Integrated_Webcam_HD                      id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=12   [slave  keyboard (3)]
    ↳ Dell WMI hotkeys                          id=14   [slave  keyboard (3)]
    ↳ DELL Wireless hotkeys                     id=15   [slave  keyboard (3)]

I have tried disabling SynPS/2 Synaptics TouchPad in a desperate attempt but to no avail.
Output of gsettings list-recursively | grep touch:

org.gnome.settings-daemon.plugins.media-keys.custom-keybindings.touchpad-indicator binding ''
org.gnome.settings-daemon.plugins.media-keys.custom-keybindings.touchpad-indicator command '/usr/bin/python3 /opt/extras.ubuntu.com/touchpad-indicator/share/touchpad-indicator/change_touchpad_state.py'
org.gnome.settings-daemon.plugins.media-keys.custom-keybindings.touchpad-indicator name 'Touchpad indicator'
org.gnome.shell.keyboard keyboard-type 'touch'
org.gnome.settings-daemon.peripherals.touchscreen orientation-lock false
org.gnome.desktop.peripherals.touchpad send-events 'enabled'
org.gnome.desktop.peripherals.touchpad natural-scroll true
org.gnome.desktop.peripherals.touchpad tap-to-click true
org.gnome.desktop.peripherals.touchpad left-handed 'mouse'
org.gnome.desktop.peripherals.touchpad click-method 'fingers'
org.gnome.desktop.peripherals.touchpad speed 0.38938053097345127
org.gnome.desktop.peripherals.touchpad scroll-method 'two-finger-scrolling'
org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled true
org.gnome.desktop.peripherals.touchscreen display ['', '', '']
org.gnome.desktop.peripherals.touchpad send-events 'enabled'
org.gnome.desktop.peripherals.touchpad natural-scroll true
org.gnome.desktop.peripherals.touchpad tap-to-click true
org.gnome.desktop.peripherals.touchpad left-handed 'mouse'
org.gnome.desktop.peripherals.touchpad click-method 'fingers'
org.gnome.desktop.peripherals.touchpad speed 0.38938053097345127
org.gnome.desktop.peripherals.touchpad scroll-method 'two-finger-scrolling'
org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled true
com.ubuntu.touch.sound incoming-call-sound '/usr/share/sounds/ubuntu/ringtones/Ubuntu.ogg'
com.ubuntu.touch.sound incoming-message-sound '/usr/share/sounds/ubuntu/notifications/Xylo.ogg'
com.ubuntu.touch.sound silent-mode false
org.gnome.shell.keyboard keyboard-type 'touch'
com.ubuntu.touch.network flight-mode false
com.ubuntu.touch.network gps true
com.ubuntu.touch.system auto-brightness false
com.ubuntu.touch.system brightness 80
com.ubuntu.touch.system orientation-lock 'none'
com.ubuntu.touch.system rotation-lock false
com.ubuntu.touch.system brightness-needs-hardware-default true
com.ubuntu.touch.system activity-timeout uint32 60
com.ubuntu.touch.system fingerprint-names @a{ss} {}
com.ubuntu.touch.system dim-timeout uint32 45
org.gnome.settings-daemon.peripherals.touchscreen orientation-lock false

I googled for hours. There looks to have been a setting for disabling the touchpad while typing in earlier versions but I never had those enabled in the past. This problem started as soon as I upgraded to 16.10. The problem is it's getting in the way of what litle gaming I did on Linux. Please help.

EDIT

xinput list-props 13

Device 'SynPS/2 Synaptics TouchPad':
    Device Enabled (139):   0
    Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (277): 1
    libinput Tapping Enabled Default (278): 0
    libinput Tapping Drag Enabled (279):    1
    libinput Tapping Drag Enabled Default (280):    1
    libinput Tapping Drag Lock Enabled (281):   0
    libinput Tapping Drag Lock Enabled Default (282):   0
    libinput Accel Speed (283): 0.389381
    libinput Accel Speed Default (284): 0.000000
    libinput Natural Scrolling Enabled (285):   1
    libinput Natural Scrolling Enabled Default (286):   0
    libinput Send Events Modes Available (261): 1, 1
    libinput Send Events Mode Enabled (262):    0, 0
    libinput Send Events Mode Enabled Default (263):    0, 0
    libinput Left Handed Enabled (287): 0
    libinput Left Handed Enabled Default (288): 0
    libinput Scroll Methods Available (289):    1, 1, 0
    libinput Scroll Method Enabled (290):   1, 0, 0
    libinput Scroll Method Enabled Default (291):   1, 0, 0
    libinput Click Methods Available (292): 1, 1
    libinput Click Method Enabled (293):    0, 1
    libinput Click Method Enabled Default (294):    1, 0
    libinput Middle Emulation Enabled (295):    0
    libinput Middle Emulation Enabled Default (296):    0
    libinput Disable While Typing Enabled (297):    1
    libinput Disable While Typing Enabled Default (298):    1
    Device Node (264):  "/dev/input/event5"
    Device Product ID (265):    2, 7
    libinput Drag Lock Buttons (299):   <no items>
    libinput Horizonal Scroll Enabled (266):    1


xinput list-props 11

Device 'DLLC6B2:00 06CB:75BF Touchpad':
    Device Enabled (139):   1
    Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
    libinput Tapping Enabled (277): 1
    libinput Tapping Enabled Default (278): 0
    libinput Tapping Drag Enabled (279):    1
    libinput Tapping Drag Enabled Default (280):    1
    libinput Tapping Drag Lock Enabled (281):   0
    libinput Tapping Drag Lock Enabled Default (282):   0
    libinput Accel Speed (283): 0.389381
    libinput Accel Speed Default (284): 0.000000
    libinput Natural Scrolling Enabled (285):   1
    libinput Natural Scrolling Enabled Default (286):   0
    libinput Send Events Modes Available (261): 1, 1
    libinput Send Events Mode Enabled (262):    0, 0
    libinput Send Events Mode Enabled Default (263):    0, 0
    libinput Left Handed Enabled (287): 0
    libinput Left Handed Enabled Default (288): 0
    libinput Scroll Methods Available (289):    1, 1, 0
    libinput Scroll Method Enabled (290):   1, 0, 0
    libinput Scroll Method Enabled Default (291):   1, 0, 0
    libinput Click Methods Available (292): 1, 1
    libinput Click Method Enabled (293):    0, 1
    libinput Click Method Enabled Default (294):    1, 0
    libinput Middle Emulation Enabled (295):    0
    libinput Middle Emulation Enabled Default (296):    0
    libinput Disable While Typing Enabled (297):    1
    libinput Disable While Typing Enabled Default (298):    1
    Device Node (264):  "/dev/input/event14"
    Device Product ID (265):    1739, 30143
    libinput Drag Lock Buttons (299):   <no items>
    libinput Horizonal Scroll Enabled (266):    1

I see the problem is the libinput Disable While Typing Enabled (297) property. So, I just set that with set-prop?

Best Answer

After the upgrade libinput is installed. You can disable this feature this way. Run in a terminal

sudo -H gedit /usr/share/X11/xorg.conf.d/60-libinput.conf

and add to the touchpad section after Driver "libinput"

 Option "DisableWhileTyping" "false"

Save the file and restart the session or reboot.

Another way to solve this is to uninstall xserver-xorg-input-libinput. That will revert everything as it was in 16.04 using xorg-synaptics.