The Lenovo *40 series introduced a new type of touchpad. Previously, all laptops had a separate set of physical buttons for the trackstick. This series removed these buttons, relying on a software emulation of the top section of the touchpad. This is visually marked on the trackpad itself, approximately like this:

+----------------------------+
| LLLLLLLLLL MMMMM RRRRRRRRR |
|                            |
|                            |
|                            |
|                            |
|                            |
|                            |
| LLLLLLLL          RRRRRRRR |
+----------------------------+

The below is a list of what is needed for support of these devices. This page only covers the top software buttons, the bottom button behavior is covered in Clickpad software buttons.

Size of the buttons

The approximate size of the top software buttons is 8% of the touchpad's announced range, starting from the top. Note that a kernel patch is required to get the right ranges.

The size of the left and right buttons is approximately 42%, the middle button is centered and should be assigned approximately 16% of the touchpad width.

Button behavior

Movement in the top button area must not generate pointer movement, these buttons are not replacement buttons for the bottom area but have their own behaviour. They do not work for click-and-drag.

If the finger starts inside the top area and moves outside the button area without the physical button being down, movement may start.

Movement into the top button area should not trigger button events, a click has to start inside this area to take effect.

The top button areas must work, even if the touchpad is otherwise disabled (e.g. by a disable-while-typing feature).

Identification

The touchpads can be identified by the PNPID, or by a DMI match

  • Helix: PnPID: LEN0033, DMI substring match "Helix"
  • T540: PnPID: LEN0034, DMI substring match "T540?"
  • x240: PnPID: LEN0035, DMI substring match "X240"
  • T440: PnPID: LEN0036, DMI substring match "T440?"
  • Yoga: PnPID: LEN0042, DMI subString match "S1Yoga"