select-by-word/triple-tap drag-select only works if tap very fast

Bug #1615204 reported by Aaron Marcuse-Kubitza
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
XOrg-Driver-Synaptics
Unknown
Unknown
xserver-xorg-input-synaptics-lts-xenial (Ubuntu)
Fix Released
High
Unassigned

Bug Description

(also on Linux kernel bug tracker at https://bugzilla.kernel.org/show_bug.cgi?id=153871)

Detailed bug description:
In Ubuntu 16.04.1 [1] on the Toshiba Chromebook 1, if you try to select text by word, by double-clicking/triple-touchpad-tapping and then dragging the mouse, this only works occasionally. However, selecting text by line with a triple-click/4-tap drag works fine. This bug does not appear when Ubuntu 16.04.1 is run in a VM in VirtualBox.
[1] and now Ubuntu 14.04.5 with the hardware-specific update to Linux kernel 4.4.0-34-generic (the same as for 16.04)

Steps to reproduce:
1) On a 1st-generation Toshiba Chromebook (and possibly other machines, too), run Ubuntu 16.04.1 from a boot disk (http://releases.ubuntu.com/16.04/ubuntu-16.04.1-desktop-i386.iso).
2) Open a terminal window and type several words.
3) Double-click/triple-touchpad-tap and then drag the mouse to attempt to select multiple words.
4) Compare this to the same boot disk run in VirtualBox, where it works properly.
5) Compare this to Ubuntu 14.04.5 with the hardware-specific update to Linux kernel 4.4.0-34-generic & an updated graphics stack (`sudo apt-get install $(hwe-support-status --show-replacements)`; http://wiki.ubuntu.com/1404_HWE_EOL), where it doesn't work.
6) Compare this to the hardware-specific update but with Linux kernel 4.4.0-34-generic removed (`sudo apt-get remove linux-image-4.4.0-38-generic linux-headers-4.4.0-38`), where it also doesn't work (and is therefore not a kernel problem, but rather relates to other files in the hardware-specific update).
7) On a non-working system, do a double-click drag-select with as fast of a double-click as possible. With this technique, you should be able to successfully double-click drag-select almost every time.
8) Open Gear menu > System Settings... > Mouse & Touchpad. Set Double-click to be as slow as possible. Also install & open GPointing Device Settings, and vary the Tapping tab settings. Neither of these fixes the problem.

Expected results:
Multiple words are selected.

Actual result:
Only the first word is selected, unless you double-click very quickly--much quicker than comfortable for normal use.

Reproducibility:
Appears to be "sometimes reproducible" at normal double-clicking speeds, but this is actually because you must do the double-click very quickly to get it to work.

Workaround:
In applications other than Terminal, can use Ctrl+Shift+Right-Arrow to select by word (significantly slower for large text blocks). For Terminal, do a double-click drag-select as quickly as possible and it will usually work.

Impact:
Recommend not upgrading to 16.04 if you have a computer where double-click drag-select doesn't work in it.

Description of the environment:
 Operation system: Ubuntu 16.04.1
 Versions of components: Linux kernel 4.4.0-34-generic (also on Ubuntu 14.04.5)
 Reference architecture: 1st-generation Toshiba Chromebook (model name "Toshiba Leon")
 Network model: N/A
 Related projects installed: none (boot disk)

Additional information:
N/A
---
ApportVersion: 2.14.1-0ubuntu3.21
Architecture: i386
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: administrator 1882 F.... pulseaudio
 /dev/snd/controlC1: administrator 1882 F.... pulseaudio
CurrentDesktop: Unity
DistroRelease: Ubuntu 14.04
InstallationDate: Installed on 2015-04-05 (506 days ago)
InstallationMedia: Ubuntu 14.04.2 LTS "Trusty Tahr" - Release i386 (20150218.1)
MachineType: Toshiba Leon
Package: linux (not installed)
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.4.0-34-generic root=UUID=127e42a1-2015-0521-0000-28e347c5f54d ro tpm_tis.force=1 quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 4.4.0-34.53~14.04.1-generic 4.4.15
RelatedPackageVersions:
 linux-restricted-modules-4.4.0-34-generic N/A
 linux-backports-modules-4.4.0-34-generic N/A
 linux-firmware 1.127.22
Tags: trusty
Uname: Linux 4.4.0-34-generic i686
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dialout dip lpadmin plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 08/26/2014
dmi.bios.vendor: coreboot
dmi.chassis.type: 3
dmi.chassis.vendor: Toshiba
dmi.modalias: dmi:bvncoreboot:bvr:bd08/26/2014:svnToshiba:pnLeon:pvr1.0:cvnToshiba:ct3:cvr:
dmi.product.name: Leon
dmi.product.version: 1.0
dmi.sys.vendor: Toshiba

affects: fuel → ubuntu
description: updated
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

bug confirmed to be specific to the Linux kernel used in Ubuntu 16.04, which is now a hardware-specific update on the Toshiba Chromebook 1

description: updated
affects: ubuntu → linux (Ubuntu)
Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 1615204

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected trusty
description: updated
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : BootDmesg.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : CRDA.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : IwConfig.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : Lspci.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : Lsusb.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : ProcEnviron.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : ProcModules.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : PulseList.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : RfKill.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : UdevDb.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : UdevLog.txt

apport information

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : WifiSyslog.txt

apport information

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote : Re: select-by-word/double-click drag-select only works sporadically on Toshiba Chromebook 1

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v4.8 kernel[0].

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8-rc3

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Triaged
tags: added: kernel-da-key
penalvch (penalvch)
Changed in linux (Ubuntu):
status: Triaged → Incomplete
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

Not a Linux kernel bug, but rather a bug in other files in the hardware-specific update, probably the xorg ones.

description: updated
affects: linux (Ubuntu) → xorg (Ubuntu)
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

some potentially-promising files from the restore diff (https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1615204/+attachment/4747314/+files/restore.log):

.d..t...... usr/share/X11/xorg.conf.d/
>f..t...... usr/share/X11/xorg.conf.d/10-evdev.conf
>f..t...... usr/share/X11/xorg.conf.d/10-quirks.conf
>f..t...... usr/share/X11/xorg.conf.d/11-evdev-quirks.conf
>f..t...... usr/share/X11/xorg.conf.d/11-evdev-trackpoint.conf
>f..t...... usr/share/X11/xorg.conf.d/50-synaptics.conf
>f..t...... usr/share/X11/xorg.conf.d/50-vmmouse.conf
>f.st...... usr/share/X11/xorg.conf.d/50-wacom.conf
>f..t...... usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf

cd+++++++++ usr/share/bug/xserver-xorg-input-mouse/
cL+++++++++ usr/share/bug/xserver-xorg-input-mouse/script -> ../xserver-xorg-core/script
cd+++++++++ usr/share/bug/xserver-xorg-input-synaptics/
cL+++++++++ usr/share/bug/xserver-xorg-input-synaptics/script -> ../xserver-xorg-core/script
cd+++++++++ usr/share/bug/xserver-xorg-input-vmmouse/
cL+++++++++ usr/share/bug/xserver-xorg-input-vmmouse/script -> ../xserver-xorg-core/script

the files in /usr/lib/xorg/modules/ (restored previously and not in the diff)

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

text:
-----
New important security and hardware support update.

WARNING: Security updates for your current Hardware Enablement Stack
ended on 2016-08-04:
 * http://wiki.ubuntu.com/1404_HWE_EOL
-----

output of `hwe-support-status --verbose` (https://wiki.ubuntu.com/1404_HWE_EOL#hwe-support-status):
-----
WARNING: Security updates for your current Hardware Enablement Stack
ended on 2016-08-04:
 * http://wiki.ubuntu.com/1404_HWE_EOL

There is a graphics stack installed on this system. An upgrade to a
configuration supported for the full lifetime of the LTS will become
available on 2016-07-21 and can be installed by running 'update-manager'
in the Dash.
-----

description: updated
Revision history for this message
penalvch (penalvch) wrote :

Aaron Marcuse-Kubitza, the justification you provided doesn't indicate one way or the other the root cause is xorg.

Could you please provide a full technical discussion (not a couple sentence opinion)?

affects: xorg (Ubuntu) → linux (Ubuntu)
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

> the justification you provided doesn't indicate one way or the other the root cause is xorg.

No, but it is more likely xorg than other packages, given that this is a mouse problem and has been proven not to be a Linux kernel problem (since the problem remains after the new Linux kernel is uninstalled and reverted back to the 3.16.0-77-generic kernel).

Revision history for this message
penalvch (penalvch) wrote :

Aaron Marcuse-Kubitza, to advise, the xorg (Ubuntu) package is a distinct application within the X.Org framework.

Despite this, if you used a prior kernel version that you had when the issue didn't occur, then the evidence indicates not a linux (Ubuntu) issue, but it doesn't root cause it to xorg (Ubuntu) precisely.

Hence, it is of your technical belief that it's the xorg package exactly as defined in https://launchpad.net/ubuntu/+source/xorg , or another one specifically?

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

> it is of your technical belief that it's the xorg package exactly as defined in https://launchpad.net/ubuntu/+source/xorg , or another one specifically?

I don't know for sure that it's xorg, that is just my best guess based on the list of changed files between the hardware-specific update and the system before it was installed. But since it isn't the Linux kernel (the bug remains after the new kernel is removed), I felt that the bug should no longer be in the linux package. Is there some kind of generic package to use when the exact package has not yet been confirmed?

description: updated
description: updated
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

This excludes unrelated software updates, which previously were performed after the hardware-specific update but now have been performed before it, to get a narrow diff.

Status of changed files in the list:
/usr/share/X11/xorg.conf.d/50-wacom.conf: does not appear to be related to the bug--the touchpad is a "Cypress APA Trackpad (cyapa)" (`xinput --list`), not a Wacom device
/usr/share/bug/xserver-xorg-*-lts-xenial/script: all points to a generic script, which is a new file in the update
/usr/lib/xorg/modules/: sources for these are not installed--would need to install them to diff them. these are the most-promising files, since the *.conf changes did not turn out to include much.

Revision history for this message
penalvch (penalvch) wrote :

Aaron Marcuse-Kubitza, to see if this is already resolved in Ubuntu, could you please test http://cdimage.ubuntu.com/daily-live/current/ and advise to the results?

tags: added: regression-release xenial
removed: trusty
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

> could you please test http://cdimage.ubuntu.com/daily-live/current/ and advise to the results?

OK, I tested it on http://cdimage.ubuntu.com/daily-live/current/yakkety-desktop-i386.iso (retrieved 22-Sep-2016 21:02), and it still occurs.

tags: added: yakkety
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

bug found: see https://bugs.freedesktop.org/show_bug.cgi?id=95171 , https://lists.x.org/archives/xorg-devel/2016-April/049504.html

patch: see https://lists.x.org/archives/xorg-devel/2016-April/049504.html

diff that caused it: (to fix, apply in reverse)
-----
diff --unified=2 -r /home/administrator/xserver-xorg-input-synaptics-lts-utopic-1.8.1/src/ /home/administrator/xserver-xorg-input-synaptics-lts-xenial-1.8.2/src/
#[...]
--- /home/administrator/xserver-xorg-input-synaptics-lts-utopic-1.8.1/src/synaptics.c 2016-09-26 08:30:04.000000000 -0700
+++ /home/administrator/xserver-xorg-input-synaptics-lts-xenial-1.8.2/src/synaptics.c 2015-03-26 18:22:09.000000000 -0700
@@ -672,5 +672,5 @@
     pars->tap_time = xf86SetIntOption(opts, "MaxTapTime", 180);
     pars->tap_move = xf86SetIntOption(opts, "MaxTapMove", tapMove);
- pars->tap_time_2 = xf86SetIntOption(opts, "MaxDoubleTapTime", 180);
+ pars->tap_time_2 = xf86SetIntOption(opts, "MaxDoubleTapTime", 100);
     pars->click_time = xf86SetIntOption(opts, "ClickTime", 100);
     pars->clickpad = xf86SetBoolOption(opts, "ClickPad", pars->clickpad); /* Probed */
#[...]

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

confirmed to be in xserver-xorg-input-synaptics-lts-xenial: see https://bugs.launchpad.net/xorg-driver-synaptics/+bug/1615204/comments/31

affects: linux (Ubuntu) → xserver-xorg-input-synaptics-lts-xenial (Ubuntu)
summary: - select-by-word/double-click drag-select only works sporadically on
- Toshiba Chromebook 1
+ select-by-word/double-click drag-select only works if tap very fast
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote : Re: select-by-word/double-click drag-select only works if tap very fast

patch from https://patchwork.freedesktop.org/patch/84419/raw/ (https://patchwork.freedesktop.org/patch/84419/ > download patch)

to apply:
apt-get source xserver-xorg-input-synaptics-lts-xenial
cd xserver-xorg-input-synaptics-lts-xenial-1.8.2/
patch -p1 <synaptics-Revert-MaxDoubleTapTime-back-to-180.patch

Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

renamed bug to "triple-tap" to match standardized wording used in https://bugs.freedesktop.org/show_bug.cgi?id=95171 . since this is not a hardware-specific bug after all (it just relates to a feature not tested in the 16.04 testing), it may be that other users report it, too, and they should be able to find it easily.

summary: - select-by-word/double-click drag-select only works if tap very fast
+ select-by-word/triple-tap drag-select only works if tap very fast
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :

Status set to "Fix Committed": 'Upstream task: the fix is in bzr/CVS/git/SVN, or committed to some place.' (https://wiki.ubuntu.com/Bugs/Bug%20statuses). In this case, the patch has been committed to the upstream xorg synaptics repository (https://patchwork.freedesktop.org/patch/84419/), but not yet merged into the Ubuntu xserver-xorg-input-synaptics-lts-xenial package.

Changed in xserver-xorg-input-synaptics-lts-xenial (Ubuntu):
status: Confirmed → Fix Committed
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Revision history for this message
penalvch (penalvch) wrote :

Not Fix Committed as defined in https://wiki.ubuntu.com/Bugs/Status .

tags: added: cherry-pick
removed: patch
no longer affects: xserver-xorg-input-synaptics-lts-xenial (Ubuntu)
affects: linux → xserver-xorg-input-synaptics-lts-xenial (Ubuntu)
Changed in xserver-xorg-input-synaptics-lts-xenial (Ubuntu):
importance: Unknown → Undecided
status: Unknown → New
importance: Undecided → High
status: New → Triaged
Revision history for this message
Aaron Marcuse-Kubitza (aaronmk0) wrote :
Changed in xserver-xorg-input-synaptics-lts-xenial (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.