Hi all, Moving this over to linuxwacom-devel since its more about what knobs to expose then about how it behaves.
I'd like to discuss how best to improve pressure curve tweaks since I think current interface is of limited use. I think there are 3 main tweaks users want to make to pressure curves. 1) Make tool softer or harder 2) Reduce maximum pressure required to apply before maximum 2048 is reported 3) Modify the curve between min/max values 1) Tool soft/hardness I think most common operation is to make tool soft, medium, hard. In the generic way that xf86-input-wacom must do it, I think only valid definition for this is to change how much pressure must be applied before the 1st non-zero value is reported. For example, change Threshold to 40 and moving 1st and and 2nd (out of 4) Pressure Curve points to (40,0) would result in harder tool then default. HW pressure of 40 would be reported as 0. There is probably fancier definitions but I think that would have to be done in an app like gimp's version of Pressure Curves because it changes depending on tool type (wax works different then air brush). If I accounted for anything else, it may be that user wants to reduce the overall pressure range to make tool feel harder but that falls into next item. 2) Maximum pressure report To get out maximum pressure reports from my tablet, I'd have to press so hard that I worry of damaging stylus tip and maybe even tablet itself. I would really like to reduce maximum pressure I must apply before a value 2048 is reported; especially for "dumb" applications that have limited control You can get an idea of what I mean by moving 3rd and 4th Pressure Curve points to something like (80,100). 3) Modify pressure "curve" A set of people probably want to have non-linear behaviour of curve they create. For example, I could see wanting "hard" at lower pressures and "soft" at higher pressures (or vis versa). This is were our current PressCurve comes in handy. OK, what does this mean for user interface? To me, it means that we have no way to do #1 or #2; what I think are two most common items. I tried to come up with ways to do these items within current PressCurve but I need to either expand PressCurve to -50-150 valid ranges or increase interface from 2 points to 4 points. The later approach is easier to understand without resorting to using a graph. Increasing from 2 to 4 points is easiest software change but breaks a lot of existing config files and/or daemons. A few other options to consider that would allow leaving PressCurve as current controls of 2nd and 3rd points only: *) When user sets Threshold, auto move 1st point in curve to (Threshold,0). This only makes sense if my definition of #1 is correct. *) Similar to previous, create a new LowPressure config value that would be used as (LowPressure,0) for 1st point and 2nd point. If user also specifies PressCurve the 2nd point comes from it. Threshold is independent behaviour. *) Create a new HighPressure value that would be used as (HighPressure,100) for 3rd and 4th points by default. PressCurve overrides 3rd point. *) Instead of adding new control points, subtract Threshold from HW reported value so first point reported with button press is always (0,0). I'm not crazy about this one because it means you can never report 2048 pressures. Chris ------------------------------------------------------------------------------ The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb _______________________________________________ Linuxwacom-devel mailing list Linuxwacom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel