Usually dragging requires the button to be held down while moving the device. Drag lock is similar to XKB's sticky keys, the button is clicked once and remains logically down until the second click. GNOME request for that feature: https://bugzilla.gnome.org/show_bug.cgi?id=637618
evdev's implementation (which dates back to the mouse driver, which dates back to the mists of time) has two functionalities: 1) Button X locks button Y (usually X == Y) 2) Button B locks the next button pressed Googling shows a few public instances of X != Y, and a few instances of 2). http://www.slackwiki.com/Logitech_Marble_FX_mouse http://forum.ubuntuusers.de/topic/draglockbutton-mit-logitech-trackman-marble-f/ OS X doesn't seem to have that feature. Windows calls it ClickLock, and has an extra setting to regulate how long the button must be held before lock engages. http://www.dummies.com/how-to/content/how-to-use-clicklock-in-windows-7-for-better-mouse.html
Should probably note that the few people I've asked all use it for button-based scroll lock. I have not yet talked to anyone using it for it's original intended purpose (a11y).
First sighting of a user using it for actual drag lock: https://bugzilla.redhat.com/show_bug.cgi?id=1249309
Moving this to the xf86-input-libinput driver. Drag lock is something that should be implemented in the compositor (or in the X case the X input driver), not in libinput where it is hard to discover and cannot integrate with the UI. Implementing this in xf86-input-libinput still doesn't integrate well, but we don't really have a choice here in X. In the Wayland stack the compositor can handle drag lock properly and thus integrate it properly too.
commit e3a888c3ab0f4cc42943b0216852cba110c3dad2 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Fri Aug 7 15:19:12 2015 +1000 Add drag lock support
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.