After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 637618 - Add drag locks configuration
Add drag locks configuration
Status: RESOLVED OBSOLETE
Product: gnome-control-center
Classification: Core
Component: Mouse
2.32.x
Other Linux
: Normal enhancement
: ---
Assigned To: Control-Center Maintainers
Control-Center Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-12-19 22:46 UTC by Paul Elliott
Modified: 2021-06-09 16:01 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
screenshot of modified mouse configuration (161.67 KB, image/png)
2011-04-01 14:05 UTC, Josef Bacik
Details

Description Paul Elliott 2010-12-19 22:46:08 UTC
Draglocks allow a low dexterity person to make a drag without having to hold a mouse button down and move the mouse pointer at the same time. They are a possible feature of the mouse driver. Mouse Preference dialog should allow a way to specify that draglocks are to be used on the mouse driver.

Solution should allow user to run an "xev" like program in a subwindow to allow
the user to figure out which physical mouse buttons have what numbers. This
will make it easy to decide which  buttons should be draglocks for which
others!

This is an accessibility issue.

Workaround for my system is the file:
/etc/X11/Xsession.d/95mouse
Which is made executable and whose contents are:
xinput --set-int-prop 'ImExPS/2 Generic Explorer Mouse' 'Evdev Drag Lock
Buttons' 8 8 1 9 3

But Joe Sixpack would not be able to figure that out.

On systems that still have xorg.conf
a mouse section like this works:


Section "InputDevice"
  Driver       "mouse"
  Identifier   "Mouse[1]"
  Option       "Device" "/dev/psaux"
  Option       "Emulate3Buttons" "no"
  Option       "Name" "Autodetection"
  Option       "Protocol" "ExplorerPS/2"
  Option       "Vendor" "Kensington"
  Option      "DragLockButtons" "8 1 9 3"
  Option       "Buttons" "7"
  Option       "ZAxisMapping" "6 7"
EndSection

But most systems don't have a working xorg.conf anymore. Everything is figured
out dynamicly.
Comment 1 Bastien Nocera 2011-03-16 13:29:32 UTC
I'm sure this could be implemented in a nice way, using a separate tab for trackballs.

Could you please recommend a trackball under £30 on amazon.co.uk, so I could actually test those changes?
Comment 2 Bastien Nocera 2011-03-31 15:54:33 UTC
Bug 645666 has code specific to trackballs as well.
Comment 3 Josef Bacik 2011-03-31 17:11:38 UTC
Bastien,

I own two of these, one for home and one for work, it's pretty cheap too

http://www.amazon.co.uk/Logitech-910-000808-Marble-Mouse/dp/B001DQY9AW/ref=sr_1_1?ie=UTF8&qid=1301591463&sr=8-1

Thanks,

Josef
Comment 4 Bastien Nocera 2011-03-31 17:17:29 UTC
Ordered, we'll see whether we can detect it easily.

A list of what options you'd expect to see available for trackballs, links to screenshots for configuration tools (Linux ones, or for other OSes) would also be appreciated.
Comment 5 Paul Elliott 2011-03-31 18:43:16 UTC
This is not a question of finding out what the hardware is capable of.

The usage of buttons 1,2,3 is set by common practice.

So are those buttons designed by the pointing device manufacturer to be "scroll" buttons.

But some devices have additional "normal buttons", the question is, (which is really a per-user question), "How does the user want to use those additional buttons?"

One possible answer is: " I want to use those additional buttons as draglocks for my other normal buttons."

Perhaps some will want to use those additional buttons as additional signalers to the applications, even though no effective standard has been established for the meaning of those additonal buttons.

When I wrote the original draglock code for x.org, there were 2 types of draglock button, a "master" draglock button and "regular" draglock button. Master draglock buttons are for people who want to do draglocking for buttons 1 and 2 but only have one extra button. "Regular" draglock buttons are paired with the coresponding button which is usaually button 1 or 3.

There is the additional problem of finding out which button number the device manufacture as associated with the additional button. It varries.

The user (joe sixpack), sees a button that he wants to use as a draglock button. He does not know what button number that pressing that button generates. It varies with the hardware but joe sixpack does not know about that.

We need a system to figure all this out for joe. We need to get joe to press the button, we remember the button number from the mouse event and use the the info to set up things properly.

While doing this test, we need to be carefull, to turn draglocking off, if it happened to already be in use. Draglocking changes mouse events changing the button number!
Comment 6 Josef Bacik 2011-04-01 14:05:02 UTC
Created attachment 184875 [details]
screenshot of modified mouse configuration

Here is a screenshot of my modified gnome mouse settings panel that I rigged up to control my mouse wheel emulation.  The "Button 8" button just lets you click the button and then listens to which button you click it with again to set the button to use for mouse emulation.  I tried to use something other than a GtkButton but I couldn't get the events to go through properly.  What can I say, I'm a kernel person :).
Comment 7 Bastien Nocera 2013-04-18 14:29:59 UTC
I have hardware to implement this, and there's a quirk in the Xorg config to detect the trackball properly.

I've been using the trackball for a couple of weeks now, and the only thing that's missing is a way to press a button and have the ball work as a mouse wheel.
Comment 8 Allan Day 2013-04-19 15:45:55 UTC
Trackballs seem a bit specialised... is it possible to provide a set of basic configuration options without getting into model-specific configuration?
Comment 9 Bastien Nocera 2013-06-03 07:28:57 UTC
(In reply to comment #8)
> Trackballs seem a bit specialised... is it possible to provide a set of basic
> configuration options without getting into model-specific configuration?

I don't understand what you mean by "model-specific configuration".
Comment 10 Bastien Nocera 2014-10-26 14:49:01 UTC
So, the original bug title asked for trackball specific support for drag locks. I'm not sure it's something we want to implement, at least if it's "just" for trackballs.

But the CC list seems to infer that this would be used for accessibility purposes. If that's the case, that's something that we could add to the a11y panel, rather than the mouse configuration.
Comment 11 Bastien Nocera 2014-10-29 13:44:11 UTC
Retitling the bug, see bug 739355 for the trackball configuration.
Comment 12 André Klapper 2021-06-09 16:01:52 UTC
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org.
As part of that, we are mass-closing older open tickets in bugzilla.gnome.org
which have not seen updates for a longer time (resources are unfortunately
quite limited so not every ticket can get handled).

If you can still reproduce the situation described in this ticket in a recent
and supported software version, then please follow
  https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines
and create a new enhancement request ticket at
  https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/

Thank you for your understanding and your help.