Disabling middle click on bottom of a clickpad / touchpadmtrack: how to get vertical button zones?Wireless mouse freezes frequently for a second on laptop, when on batteryTrackPoint hard to control after Debian updateEvdev Wheel Emulation on T431sDisable scroll wheel horizontal buttons (back/forward)Middle-click scrolling with ThinkPad/avoid pasting“Couldn't find synaptics properties. No synaptics driver loaded?” after reboot. Scrolling doesn't workUbuntu 14.04 Mouse Touchpad gone badmtrack: how to get vertical button zones?E470 TrackPoint not working on CentOS 7
What is better: yes / no radio, or simple checkbox?
Giving a talk in my old university, how prominently should I tell students my salary?
What do you call someone who likes to pick fights?
Sort array by month and year
Tool for measuring readability of English text
Is there a logarithm base for which the logarithm becomes an identity function?
How do you make a gun that shoots melee weapons and/or swords?
Unidentified signals on FT8 frequencies
Boss Telling direct supervisor I snitched
Inorganic chemistry handbook with reaction lists
Is this Paypal Github SDK reference really a dangerous site?
What is 'Log Memory' in Query Store 2017
Why do we call complex numbers “numbers” but we don’t consider 2-vectors numbers?
How to make sure I'm assertive enough in contact with subordinates?
Why do phishing e-mails use faked e-mail addresses instead of the real one?
How does a sound wave propagate?
Why is there an extra space when I type "ls" on the Desktop?
ESPP--any reason not to go all in?
What is the orbit and expected lifetime of Crew Dragon trunk?
How does learning spells work when leveling a multiclass character?
What does it take to become a wilderness skills guide as a business?
Tabular environment - text vertically positions itself by bottom of tikz picture in adjacent cell
Why does this boat have a landing pad? (SpaceX's GO Searcher) Any plans for propulsive capsule landings?
Insult for someone who "doesn't know anything"
Disabling middle click on bottom of a clickpad / touchpad
mtrack: how to get vertical button zones?Wireless mouse freezes frequently for a second on laptop, when on batteryTrackPoint hard to control after Debian updateEvdev Wheel Emulation on T431sDisable scroll wheel horizontal buttons (back/forward)Middle-click scrolling with ThinkPad/avoid pasting“Couldn't find synaptics properties. No synaptics driver loaded?” after reboot. Scrolling doesn't workUbuntu 14.04 Mouse Touchpad gone badmtrack: how to get vertical button zones?E470 TrackPoint not working on CentOS 7
The Thinkpad T480s has a "clickpad": a touchpad where (parts of) the touchpad itself is pressable instead of having physical dedicated buttons.
Running X.org 7.7, there is a horizontal stripe at the bottom of the touchpad that acts as the mouse buttons 1, 2, and 3 (i.e. left, middle and right); basically it looks like this:
+-----------------+
| |
| |
| |
| |
|11111 22222 33333|
|11111 22222 33333|
+-----------------+
How do I disable button 2 and reallocate that area to between buttons 1 and 3? I.e. I would like the following layout:
+-----------------+
| |
| |
| |
| |
|11111111 33333333|
|11111111 33333333|
+-----------------+
Note this question is different from mtrack: how to get vertical button zones? since I am trying to do this in the context of XInput, not mtrack. Also, the hardware is not Synaptics.
The hardware in question is identified by XInput as
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=11 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech TrackPoint id=12 [slave pointer (2)]
x11 mouse touchpad thinkpad xinput
add a comment |
The Thinkpad T480s has a "clickpad": a touchpad where (parts of) the touchpad itself is pressable instead of having physical dedicated buttons.
Running X.org 7.7, there is a horizontal stripe at the bottom of the touchpad that acts as the mouse buttons 1, 2, and 3 (i.e. left, middle and right); basically it looks like this:
+-----------------+
| |
| |
| |
| |
|11111 22222 33333|
|11111 22222 33333|
+-----------------+
How do I disable button 2 and reallocate that area to between buttons 1 and 3? I.e. I would like the following layout:
+-----------------+
| |
| |
| |
| |
|11111111 33333333|
|11111111 33333333|
+-----------------+
Note this question is different from mtrack: how to get vertical button zones? since I am trying to do this in the context of XInput, not mtrack. Also, the hardware is not Synaptics.
The hardware in question is identified by XInput as
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=11 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech TrackPoint id=12 [slave pointer (2)]
x11 mouse touchpad thinkpad xinput
add a comment |
The Thinkpad T480s has a "clickpad": a touchpad where (parts of) the touchpad itself is pressable instead of having physical dedicated buttons.
Running X.org 7.7, there is a horizontal stripe at the bottom of the touchpad that acts as the mouse buttons 1, 2, and 3 (i.e. left, middle and right); basically it looks like this:
+-----------------+
| |
| |
| |
| |
|11111 22222 33333|
|11111 22222 33333|
+-----------------+
How do I disable button 2 and reallocate that area to between buttons 1 and 3? I.e. I would like the following layout:
+-----------------+
| |
| |
| |
| |
|11111111 33333333|
|11111111 33333333|
+-----------------+
Note this question is different from mtrack: how to get vertical button zones? since I am trying to do this in the context of XInput, not mtrack. Also, the hardware is not Synaptics.
The hardware in question is identified by XInput as
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=11 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech TrackPoint id=12 [slave pointer (2)]
x11 mouse touchpad thinkpad xinput
The Thinkpad T480s has a "clickpad": a touchpad where (parts of) the touchpad itself is pressable instead of having physical dedicated buttons.
Running X.org 7.7, there is a horizontal stripe at the bottom of the touchpad that acts as the mouse buttons 1, 2, and 3 (i.e. left, middle and right); basically it looks like this:
+-----------------+
| |
| |
| |
| |
|11111 22222 33333|
|11111 22222 33333|
+-----------------+
How do I disable button 2 and reallocate that area to between buttons 1 and 3? I.e. I would like the following layout:
+-----------------+
| |
| |
| |
| |
|11111111 33333333|
|11111111 33333333|
+-----------------+
Note this question is different from mtrack: how to get vertical button zones? since I am trying to do this in the context of XInput, not mtrack. Also, the hardware is not Synaptics.
The hardware in question is identified by XInput as
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech Touchpad id=11 [slave pointer (2)]
⎜ ↳ ETPS/2 Elantech TrackPoint id=12 [slave pointer (2)]
x11 mouse touchpad thinkpad xinput
x11 mouse touchpad thinkpad xinput
asked Apr 19 '18 at 12:42
CactusCactus
3281412
3281412
add a comment |
add a comment |
3 Answers
3
active
oldest
votes
You can easily get that middle 'button' to stop registering with a command like this:
xinput set-button-map 11 1 2 0 4 5 6 7 8 9 10 11 12
The first argument here specifies the device ID (in this case 11 based on your above posted output from xinput
), while the rest map buttons to functions. The first two are the left and right buttons (with 1 and 2 being a regular click and the context menu), the third is the middle button (normally it would be set as 3
, but 0
tells xinput to map it to nothing), while the rest cover other things (scrolling, etc).
Adjusting the other two buttons to cover the whole bottom of the pad is a bit trickier, and may actually not be possible. Clickpads like this one work by having a single switch under the pad that triggers the click, and then watching where the finger is on the pad to determine which button to register it as. There are three different ways this might be handled:
- In the firmware of the pad itself, without configuration options.
- In the firmware of the pad itself, with configuration options.
- In the userspace part of the driver.
The second method is only ever the case if the device is not connected over an old PS/2 style serial connection (yours probably is connected this way, most Thinkpads are like this). Synaptics does this using method 3, and offers lots of config options for almost everything. I'm not sure how Elantech handles it, but I would guess it's probably the first case unless it's a USB or I2C connected device, in which case it's technically the third even though I'm pretty sure they have no special input driver for X.
On my ThinkPad A485, runningxinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)
– comfreak
Jan 12 at 8:40
add a comment |
If I type:
$ xinput get-button-map 'DLL07BF:01 06CB:7A13 Touchpad'
I get: 1 2 3 4 5 6 7
I tried using:
$ xinput set-button-map 13 1 2 0 4 5 6 7
It disabled middle and right click.
+1 forget-button-map
– comfreak
Jan 12 at 8:42
add a comment |
Looks like order of buttons is Left Middle Right there.
This worked for me.
xinput set-button-map 11 1 0 3 4 5 6 7
New contributor
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f438725%2fdisabling-middle-click-on-bottom-of-a-clickpad-touchpad%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can easily get that middle 'button' to stop registering with a command like this:
xinput set-button-map 11 1 2 0 4 5 6 7 8 9 10 11 12
The first argument here specifies the device ID (in this case 11 based on your above posted output from xinput
), while the rest map buttons to functions. The first two are the left and right buttons (with 1 and 2 being a regular click and the context menu), the third is the middle button (normally it would be set as 3
, but 0
tells xinput to map it to nothing), while the rest cover other things (scrolling, etc).
Adjusting the other two buttons to cover the whole bottom of the pad is a bit trickier, and may actually not be possible. Clickpads like this one work by having a single switch under the pad that triggers the click, and then watching where the finger is on the pad to determine which button to register it as. There are three different ways this might be handled:
- In the firmware of the pad itself, without configuration options.
- In the firmware of the pad itself, with configuration options.
- In the userspace part of the driver.
The second method is only ever the case if the device is not connected over an old PS/2 style serial connection (yours probably is connected this way, most Thinkpads are like this). Synaptics does this using method 3, and offers lots of config options for almost everything. I'm not sure how Elantech handles it, but I would guess it's probably the first case unless it's a USB or I2C connected device, in which case it's technically the third even though I'm pretty sure they have no special input driver for X.
On my ThinkPad A485, runningxinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)
– comfreak
Jan 12 at 8:40
add a comment |
You can easily get that middle 'button' to stop registering with a command like this:
xinput set-button-map 11 1 2 0 4 5 6 7 8 9 10 11 12
The first argument here specifies the device ID (in this case 11 based on your above posted output from xinput
), while the rest map buttons to functions. The first two are the left and right buttons (with 1 and 2 being a regular click and the context menu), the third is the middle button (normally it would be set as 3
, but 0
tells xinput to map it to nothing), while the rest cover other things (scrolling, etc).
Adjusting the other two buttons to cover the whole bottom of the pad is a bit trickier, and may actually not be possible. Clickpads like this one work by having a single switch under the pad that triggers the click, and then watching where the finger is on the pad to determine which button to register it as. There are three different ways this might be handled:
- In the firmware of the pad itself, without configuration options.
- In the firmware of the pad itself, with configuration options.
- In the userspace part of the driver.
The second method is only ever the case if the device is not connected over an old PS/2 style serial connection (yours probably is connected this way, most Thinkpads are like this). Synaptics does this using method 3, and offers lots of config options for almost everything. I'm not sure how Elantech handles it, but I would guess it's probably the first case unless it's a USB or I2C connected device, in which case it's technically the third even though I'm pretty sure they have no special input driver for X.
On my ThinkPad A485, runningxinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)
– comfreak
Jan 12 at 8:40
add a comment |
You can easily get that middle 'button' to stop registering with a command like this:
xinput set-button-map 11 1 2 0 4 5 6 7 8 9 10 11 12
The first argument here specifies the device ID (in this case 11 based on your above posted output from xinput
), while the rest map buttons to functions. The first two are the left and right buttons (with 1 and 2 being a regular click and the context menu), the third is the middle button (normally it would be set as 3
, but 0
tells xinput to map it to nothing), while the rest cover other things (scrolling, etc).
Adjusting the other two buttons to cover the whole bottom of the pad is a bit trickier, and may actually not be possible. Clickpads like this one work by having a single switch under the pad that triggers the click, and then watching where the finger is on the pad to determine which button to register it as. There are three different ways this might be handled:
- In the firmware of the pad itself, without configuration options.
- In the firmware of the pad itself, with configuration options.
- In the userspace part of the driver.
The second method is only ever the case if the device is not connected over an old PS/2 style serial connection (yours probably is connected this way, most Thinkpads are like this). Synaptics does this using method 3, and offers lots of config options for almost everything. I'm not sure how Elantech handles it, but I would guess it's probably the first case unless it's a USB or I2C connected device, in which case it's technically the third even though I'm pretty sure they have no special input driver for X.
You can easily get that middle 'button' to stop registering with a command like this:
xinput set-button-map 11 1 2 0 4 5 6 7 8 9 10 11 12
The first argument here specifies the device ID (in this case 11 based on your above posted output from xinput
), while the rest map buttons to functions. The first two are the left and right buttons (with 1 and 2 being a regular click and the context menu), the third is the middle button (normally it would be set as 3
, but 0
tells xinput to map it to nothing), while the rest cover other things (scrolling, etc).
Adjusting the other two buttons to cover the whole bottom of the pad is a bit trickier, and may actually not be possible. Clickpads like this one work by having a single switch under the pad that triggers the click, and then watching where the finger is on the pad to determine which button to register it as. There are three different ways this might be handled:
- In the firmware of the pad itself, without configuration options.
- In the firmware of the pad itself, with configuration options.
- In the userspace part of the driver.
The second method is only ever the case if the device is not connected over an old PS/2 style serial connection (yours probably is connected this way, most Thinkpads are like this). Synaptics does this using method 3, and offers lots of config options for almost everything. I'm not sure how Elantech handles it, but I would guess it's probably the first case unless it's a USB or I2C connected device, in which case it's technically the third even though I'm pretty sure they have no special input driver for X.
answered Apr 19 '18 at 19:05
Austin HemmelgarnAustin Hemmelgarn
6,22111119
6,22111119
On my ThinkPad A485, runningxinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)
– comfreak
Jan 12 at 8:40
add a comment |
On my ThinkPad A485, runningxinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)
– comfreak
Jan 12 at 8:40
On my ThinkPad A485, running
xinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)– comfreak
Jan 12 at 8:40
On my ThinkPad A485, running
xinput get-button-map
gives me 1 through 7 in ascending order. When I changed the third digit to 0, my right click was disabled, not the middle click. In my case the second digit was the middle click. However, I didn't set it to 0, but to 1, so now I don't have a dead space but rather an extended left click ;-)– comfreak
Jan 12 at 8:40
add a comment |
If I type:
$ xinput get-button-map 'DLL07BF:01 06CB:7A13 Touchpad'
I get: 1 2 3 4 5 6 7
I tried using:
$ xinput set-button-map 13 1 2 0 4 5 6 7
It disabled middle and right click.
+1 forget-button-map
– comfreak
Jan 12 at 8:42
add a comment |
If I type:
$ xinput get-button-map 'DLL07BF:01 06CB:7A13 Touchpad'
I get: 1 2 3 4 5 6 7
I tried using:
$ xinput set-button-map 13 1 2 0 4 5 6 7
It disabled middle and right click.
+1 forget-button-map
– comfreak
Jan 12 at 8:42
add a comment |
If I type:
$ xinput get-button-map 'DLL07BF:01 06CB:7A13 Touchpad'
I get: 1 2 3 4 5 6 7
I tried using:
$ xinput set-button-map 13 1 2 0 4 5 6 7
It disabled middle and right click.
If I type:
$ xinput get-button-map 'DLL07BF:01 06CB:7A13 Touchpad'
I get: 1 2 3 4 5 6 7
I tried using:
$ xinput set-button-map 13 1 2 0 4 5 6 7
It disabled middle and right click.
edited Sep 2 '18 at 3:06
slm♦
253k71535686
253k71535686
answered Sep 2 '18 at 1:57
RobertRobert
211
211
+1 forget-button-map
– comfreak
Jan 12 at 8:42
add a comment |
+1 forget-button-map
– comfreak
Jan 12 at 8:42
+1 for
get-button-map
– comfreak
Jan 12 at 8:42
+1 for
get-button-map
– comfreak
Jan 12 at 8:42
add a comment |
Looks like order of buttons is Left Middle Right there.
This worked for me.
xinput set-button-map 11 1 0 3 4 5 6 7
New contributor
add a comment |
Looks like order of buttons is Left Middle Right there.
This worked for me.
xinput set-button-map 11 1 0 3 4 5 6 7
New contributor
add a comment |
Looks like order of buttons is Left Middle Right there.
This worked for me.
xinput set-button-map 11 1 0 3 4 5 6 7
New contributor
Looks like order of buttons is Left Middle Right there.
This worked for me.
xinput set-button-map 11 1 0 3 4 5 6 7
New contributor
New contributor
answered 5 hours ago
Tim BorodinTim Borodin
1
1
New contributor
New contributor
add a comment |
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f438725%2fdisabling-middle-click-on-bottom-of-a-clickpad-touchpad%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown