Opened 4 years ago

Closed 4 years ago

#9410 closed enhancement (fixed)


Reported by: bdubbs@… Owned by: Douglas R. Reno
Priority: normal Milestone: 8.1
Component: BOOK Version: SVN
Severity: normal Keywords:


New minor version.

Change History (3)

comment:1 by bdubbs@…, 4 years ago

Fix build with #ifdef DEBUG disabled

xsetwacom: use XkbGetMap instead of XkbGetKeyboard

XkbGetMap is more robust in cases where certain keyboard description components are missing. XkbGetKeyboard will fail when any component cannot be resolved; since XkbAllComponentsMask is requested, any missing component will result in the call returning NULL. Since we don’t necessarily need all components (e.g., keyboard geometry, keymap names), we use XkbGetMap instead.

Support recent display devices on older kernels

Older kernels like 2.6.30 will end up with touches interpreted as relative events unless these devices are explicitly added.

Introduce "Pressure2K" config option for incompatible software

It appears that some software may not be entirely compatible with the expanded 65K pressure level range that was introduced in version 0.34.0. Although our driver advertises the larger range in XI2 (and toolkits like GTK+2/3 and Qt3/4/5 make use of it), there have been reports of other software (e.g. The Foundry's "NUKE") misbehaving.

As a workaround, this patch introduces a new boolean config option named "Pressure2K". If enabled, it causes the driver to revert to its prior behavior of using a pressure range of 0-2047. This option is disabled by default, but can be turned on by adding the following configuration snippet to a new file in the /etc/X11/xorg.conf.d directory:

    Section "InputClass"
        Identifier "Wacom pressure compatibility"
        MatchDriver "wacom"
        Option "Pressure2K" "true"

test: Update test_normalize_pressure to work with maxCurve

Commit d958ab79d2 changes the driver's pressure normalization functions to use a variable "maxCurve" which defines the upper limit of pressure values to be emitted by the driver, rather than using FILTER_PRESSURE_RES directly. The tests were never updated to take this into account and fail due to maxCurve never being set.

This patch has the normalize_pressure test set the value of maxCurve. While we're at it, we have the test verify that multiple values of maxCurve work as expected.

comment:2 by bdubbs@…, 4 years ago

Owner: changed from blfs-book@… to Douglas R. Reno

comment:3 by bdubbs@…, 4 years ago

Resolution: fixed
Status: newclosed

Fixed at revision 18921.

Note: See TracTickets for help on using tickets.