TrebleDroid / treble_experimentations

Scripts to automatically build/CI/Release TrebleDroid GSI
Other
203 stars 26 forks source link

Galaxy Tab S8 Ultra, Book Cover keyboard - touchpad axis inverted #121

Open markinhosmrk opened 1 week ago

markinhosmrk commented 1 week ago

Hi,

When using the touchpad in Book Cover keyboard, the touchpad axis are inverted (moving up/down moves left/right and vice versa, orientation seems to be portrait instead of landscape). Same issue happened in Android 13 builds but there using an .idc file with the following contents solved it, it does not work under Android 14:

/system/usr/idc/sec_touchpad_pogo.idc

touch.orientationAware = 0
touch.orientation = 0

I can see in dumpsys input and getevents that it is sec_touchpad_pogo device and it uses /dev/input/event15. When I apply the workaround that worked in Android 13 it shows the idc file being used in dumpsys. But apparently it is not applied, tried many different parameters there and no change at all.

Event Hub State:
  BuiltInKeyboardId: -2
  Devices:
    1: sec_touchpad_pogo
      Classes: TOUCH | TOUCH_MT | TOUCHPAD
      Path: /dev/input/event15
      Enabled: true
      Descriptor: 91b7b0aa27a986b5b229e149af0925f469502dfa
      Location:
      ControllerNumber: 0
      UniqueId:
      Identifier: bus=0x0000, vendor=0x0000, product=0x0000, version=0x0000, bluetoothAddress=<not set>
      KeyLayoutFile:
      KeyCharacterMapFile:
      ConfigurationFile:
      VideoDevice: <none>
      SysfsDevicePath: /sys/devices/platform/soc/soc:pogo_touchpad
      KeyState (pressed): <none>
      AbsState: ABS_X=0, ABS_Y=0, ABS_MT_SLOT=0, ABS_MT_TOUCH_MAJOR=0, ABS_MT_POSITION_X=0, ABS_MT_POSITION_Y=0, ABS_MT_TRACKING_ID=0
gts8uwifi:/system/usr/idc # getevent -ilt /dev/input/event15
add device 1: /dev/input/event15
  bus:      0000
  vendor    0000
  product   0000
  version   0000
  name:     "sec_touchpad_pogo"
  location: ""
  id:       ""
  version:  1.0.1
  events:
    KEY (0001): BTN_MOUSE             BTN_RIGHT             BTN_TOOL_FINGER       BTN_TOUCH
                BTN_TOOL_DOUBLETAP    BTN_TOOL_TRIPLETAP
    ABS (0003): ABS_X                 : value 0, min 0, max 1599, fuzz 0, flat 0, resolution 0
                ABS_Y                 : value 0, min 0, max 2559, fuzz 0, flat 0, resolution 0
                ABS_MT_SLOT           : value 0, min 0, max 2, fuzz 0, flat 0, resolution 0
                ABS_MT_TOUCH_MAJOR    : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0
                ABS_MT_POSITION_X     : value 0, min 0, max 1599, fuzz 0, flat 0, resolution 0
                ABS_MT_POSITION_Y     : value 0, min 0, max 2559, fuzz 0, flat 0, resolution 0
                ABS_MT_TRACKING_ID    : value 0, min 0, max 65535, fuzz 0, flat 0, resolution 0
  input props:
    INPUT_PROP_POINTER

This is what I see using getevent -lt for the device.

Moving left/right

[     297.625773] EV_SYN       SYN_REPORT           00000000
[     297.642863] EV_ABS       ABS_MT_POSITION_Y    000002c1
[     297.642863] EV_SYN       SYN_REPORT           00000000
[     297.658765] EV_ABS       ABS_MT_POSITION_Y    000002c0
[     297.658765] EV_SYN       SYN_REPORT           00000000
[     297.683715] EV_ABS       ABS_MT_TOUCH_MAJOR   00000011
[     297.683715] EV_ABS       ABS_MT_POSITION_Y    000002bf

Moving up/down

[     332.485525] EV_SYN       SYN_REPORT           00000000
[     332.493136] EV_ABS       ABS_MT_POSITION_X    00000437
[     332.493136] EV_SYN       SYN_REPORT           00000000
[     332.501189] EV_ABS       ABS_MT_POSITION_X    00000438
[     332.501189] EV_SYN       SYN_REPORT           00000000
[     332.510128] EV_ABS       ABS_MT_POSITION_X    00000439

Any other way to invert axis for a touchpad? Please let me know if any additional info is needed.

Thanks, Marcos

Smartphone (please complete the following information):

markinhosmrk commented 1 week ago

One additional comment: with or without the .idc file I always see the following in dumpsys input. I'd expect it to change according to what is defined in the file.

    Touchpad Input Mapper:
      Pointer captured: false
      Gesture converter:
        Orientation: Rotation270
        Axis info:
          X: min=0, max=1599, flat=0, fuzz=0, resolution=0
          Y: min=0, max=2559, flat=0, fuzz=0, resolution=0
        Button state: 0x00000000
        Down time: 0
        Current classification: NONE
phhusson commented 1 week ago
  1. You should send that IDC to TrebleDroid so that every Galaxy Tab S8 user get that fix, not just you
  2. Looks like idc syntax changed, try this:
touch.orientationAware = 0
touch.orientation = ORIENTATION_0

I'm not really clear what happens because ORIENTATION_0 is the default... Maybe you'll need touch.orientationAware = false ?

markinhosmrk commented 1 week ago

@phhusson thanks for the quick update! Any tip on where/who should I reach to share the idc files?

Will try the recommended syntax and will share the results.

Thanks, Marcos

markinhosmrk commented 1 week ago

Unfortunately it still did not work.

markinhosmrk commented 6 days ago

Hi,

Made some tests with an Android 12 GSI:

Looks like the touchpad device is configured differently in A14 GSI... any way I can make it the same as in A13?

A13

  Device 13: sec_touchpad_pogo
    EventHub Devices: [ 18 ]
    Generation: 60
    IsExternal: false
    AssociatedDisplayPort: <none>
    AssociatedDisplayUniqueId: <none>
    HasMic:     false
    Sources: MOUSE
    KeyboardType: 0
    ControllerNum: 0
    Motion Ranges:
      X: source=MOUSE, min=0.000, max=2959.000, flat=0.000, fuzz=0.000, resolution=0.000
      Y: source=MOUSE, min=0.000, max=1847.000, flat=0.000, fuzz=0.000, resolution=0.000
      PRESSURE: source=MOUSE, min=0.000, max=1.000, flat=0.000, fuzz=0.000, resolution=0.000
      SIZE: source=MOUSE, min=0.000, max=1.000, flat=0.000, fuzz=0.000, resolution=0.000
      TOUCH_MAJOR: source=MOUSE, min=0.000, max=3489.513, flat=0.000, fuzz=0.000, resolution=0.000
      TOUCH_MINOR: source=MOUSE, min=0.000, max=3489.513, flat=0.000, fuzz=0.000, resolution=0.000
      TOOL_MAJOR: source=MOUSE, min=0.000, max=3489.513, flat=0.000, fuzz=0.000, resolution=0.000
      TOOL_MINOR: source=MOUSE, min=0.000, max=3489.513, flat=0.000, fuzz=0.000, resolution=0.000
    Touch Input Mapper (mode - POINTER):
      Parameters:
        GestureMode: MULTI_TOUCH
        DeviceType: POINTER
        AssociatedDisplay: hasAssociatedDisplay=true, isExternal=false, displayId=''
        OrientationAware: false
        Orientation: ORIENTATION_0
      Raw Touch Axes:
        X: min=0, max=1599, flat=0, fuzz=0, resolution=0
        Y: min=0, max=2559, flat=0, fuzz=0, resolution=0
        Pressure: unknown range
        TouchMajor: min=0, max=255, flat=0, fuzz=0, resolution=0
        TouchMinor: unknown range
        ToolMajor: unknown range
        ToolMinor: unknown range
        Orientation: unknown range
        Distance: unknown range
        TiltX: unknown range
        TiltY: unknown range
        TrackingId: min=0, max=65535, flat=0, fuzz=0, resolution=0
        Slot: min=0, max=2, flat=0, fuzz=0, resolution=0
      Calibration:
        touch.size.calibration: GEOMETRIC
        touch.pressure.calibration: none
        touch.orientation.calibration: none
        touch.distance.calibration: none
        touch.coverage.calibration: none
      Affine Transformation:
        X scale: 1.000
        X ymix: 0.000
        X offset: 0.000
        Y xmix: 0.000
        Y scale: 1.000
        Y offset: 0.000
      Viewport INTERNAL: displayId=0, uniqueId=local:4630947232161729154, port=130, orientation=1, logicalFrame=[0, 0, 2
960, 1848], physicalFrame=[0, 0, 2960, 1848], deviceSize=[2960, 1848], isActive=[1]
      DisplayWidth: 1848px
      DisplayHeight: 2960px
      PhysicalWidth: 1848px
      PhysicalHeight: 2960px
      PhysicalLeft: 0
      PhysicalTop: 0
      InputDeviceOrientation: 3
      Translation and Scaling Factors:
        XScale: 1.155
        YScale: 1.156
        XPrecision: 0.866
        YPrecision: 0.865
        GeometricScale: 1.156
        PressureScale: 0.000
        SizeScale: 0.004
        OrientationScale: 0.000
        DistanceScale: 0.000
        HaveTilt: false
        TiltXCenter: 0.000
        TiltXScale: 0.000
        TiltYCenter: 0.000
        TiltYScale: 0.000
      Last Raw Button State: 0x00000000
      Last Raw Touch: pointerCount=0
      Last Cooked Button State: 0x00000000
      Last Cooked Touch: pointerCount=0
      Stylus Fusion:
        ExternalStylusConnected: false
        External Stylus ID: -1
        External Stylus Data Timeout: 9223372036854775807
      External Stylus State:
        When: 9223372036854775807
        Pressure: 0.000000
        Button State: 0x00000000
        Tool Type: 0
      Pointer Gesture Detector:
        XMovementScale: 0.925
        YMovementScale: 0.925
        XZoomScale: 0.347
        YZoomScale: 0.347
        MaxSwipeWidth: 754.718506

A14

  Device 12: sec_touchpad_pogo
    EventHub Devices: [ 1 ]
    Generation: 50
    IsExternal: false
    IsWaking: false
    AssociatedDisplayPort: <none>
    AssociatedDisplayUniqueId: <none>
    HasMic:     false
    Sources: MOUSE | TOUCHPAD
    KeyboardType: 0
    ControllerNum: 0
    Motion Ranges:
      PRESSURE: source=MOUSE, min=0.000, max=1.000, flat=0.000, fuzz=0.000, resolution=0.000
      X: source=MOUSE, min=0.000, max=2959.000, flat=0.000, fuzz=0.000, resolution=0.000
      Y: source=MOUSE, min=0.000, max=1847.000, flat=0.000, fuzz=0.000, resolution=0.000
      GESTURE_X_OFFSET: source=MOUSE, min=-1.000, max=1.000, flat=0.000, fuzz=0.000, resolution=0.000
      GESTURE_Y_OFFSET: source=MOUSE, min=-1.000, max=1.000, flat=0.000, fuzz=0.000, resolution=0.000
    Touchpad Input Mapper:
      Pointer captured: false
      Gesture converter:
        Orientation: Rotation270
        Axis info:
          X: min=0, max=1599, flat=0, fuzz=0, resolution=0
          Y: min=0, max=2559, flat=0, fuzz=0, resolution=0
        Button state: 0x00000000
        Down time: 0
        Current classification: NONE
      Gesture properties:
        Accel Max dt (real): 0.050000
        Accel Min dt (real): 0.003000
        Australian Scrolling (boolean): false
        Bottom Zone Size (real): 10.000000
        Box Height (real): 0.000000
        Box Width (real): 0.000000
        Button Evaluation Timeout (real): 0.050000
        Button Finger Timeout (real): 0.030000
        Button Max Distance From Expected (real): 20.000000
        Button Move Distance (real): 10.000000
        Button Right Click Zone Enable (boolean): false
        Button Right Click Zone Size (real): 20.000000
        Change Min Move Distance (real): 3.000000
        Change Timeout (real): 0.200000
        Click Drag Min Slope (real): 2.220000
        Click Drag Pressure Diff Factor (real): 1.200000
        Click Drag Pressure Diff Thresh (real): 10.000000
        Compute Surface Area from Pressure (boolean): true
        Compute Surface Area from Touch Size for Haptic Pads (boolean): false
        Custom Haptic Button Force Threshold Down (real): 150.000000
        Custom Haptic Button Force Threshold Up (real): 130.000000
        Damp Scroll Min Move Factor (real): 0.200000
        Delay On Possible Liftoff (boolean): false
        Device Mouse (boolean): false
        Device Pointing Stick (boolean): false
        Device Touchpad (boolean): true
        Drumroll Co Move Ratio (real): 1.200000
        Drumroll Max Speed Change Factor (real): 15.000000
        Drumroll Speed Thresh (real): 400.000000
        Drumroll Suppression Enable (boolean): true
        Dynamic Haptic Down Ratio (real): 1.200000
        Dynamic Haptic Up Ratio (real): 0.500000
        Enable Haptic Button Generation (boolean): false
        Evaluation Timeout (real): 0.150000
        Event Debug Logging Components Enable (integer): 0
        Event Logging Enable (boolean): false
        Fake Timestamp Delta (real): 0.000000
        Fat Finger Min Move Distance (real): 15.000000
        Fat Finger Pressure Ratio (real): 1.400000
        Fat Finger Width Ratio (real): 1.300000
        Filter Low Pressure (boolean): false
        Finger Merge Distance Thresh (real): 140.000000
        Finger Merge Filter Enabled (boolean): false
        Finger Merge Maximum Pressure (real): 83.000000
        Finger Merge Min Pressure (real): 51.000000
        Finger Merge Minimum Touch Major (real): 280.000000
        Finger Moving Energy (real): 0.012000
        Finger Moving Hysteresis (real): 0.006000
        Fling Buffer Depth (integer): 10
        Fling Buffer Min Avg Speed (real): 10.000000
        Fling Buffer Suppress Zero Length Scrolls (boolean): true
        Fling Stop Extra Delay (real): 0.055000
        Fling Stop Timeout (real): 0.030000
        Force Calibration Offset (real): 0.000000
        Force Calibration Slope (real): 1.000000
        Force Touch Count To Match Finger Count (boolean): false
        Four Finger Swipe Distance Ratio (real): 0.200000
        Four Finger Swipe Distance Thresh (real): 1.500000
        Haptic Button Sensitivity (integer): 3
        Haptic Complete Release Suppression Speed (real): 200.000000
        Horizontal Scroll Snap Slope (real): 0.577350
        Hysteresis Pinch Scale Resolution Squared (real): 1.050000
        Input Queue Delay (real): 0.000000
        Input Queue Max Delay (real): 0.017000
        Input Queue Min Nonsuppression Speed (real): 200.000000
        Integrated Touchpad (boolean): false
        Inter-Tap Timeout (real): 0.150000
        Invert Scrolling (boolean): true
        Inward Pinch Minimum Angle (real): 0.300000
        Keyboard Palm Prevent Timeout (real): 0.500000
        Keyboard Touched Timeval High (integer): 0
        Keyboard Touched Timeval Low (integer): 0
        Liftoff Speed Factor (real): 5.000000
        Log Path (string): /var/log/xorg/touchpad_activity_log.txt
        Logging Notify (integer): 0
        Logging Reset (integer): 0
        Max Allowed Pressure Change Per Sec (real): 800.000000
        Max Dynamic Haptic Up Force (real): 350.000000
        Max Finger Stationary Speed (real): 0.000000
        Max Hysteresis Pressure Per Sec (real): 600.000000
        Max Pressure Change Duration (real): 0.016000
        Max Stationary Move Speed (real): 0.000000
        Max Stationary Move Speed Hysteresis (real): 0.000000
        Max Stationary Move Suppress Distance (real): 1.000000
        Merged Finger Max Age (real): 0.350000
        Merged Finger Max X Move (real): 180.000000
        Merged Finger Max Y Move (real): 60.000000
        Merged Finger Suspicious Angle Min Displacement (real): 7.000000
        Merged Finger Touch Major Pressure Ratio (real): 5.000000
        Merged Finger Touch Major Thresh (real): 380.000000
        Merged Finger X Jump Max Disp (real): 9.000000
        Merged Finger X Jump Min Disp (real): 6.000000
        Metrics Mouse Moving Time (real): 0.050000
        Metrics Mouse Warmup Session (integer): 100
        Metrics Noisy Ground Distance (real): 10.000000
        Metrics Noisy Ground Time (real): 0.100000
        Min Interpolate Period (real): 0.021000
        Minimum Movement Direction Detection (real): 0.003000
        Minimum Pinch Scale Resolution Squared (real): 1.005000
        Motion Tap Prevent Timeout (real): 0.050000
        Mouse Accel Curves (boolean): false
        Mouse CPI (real): 1000.000000
        Mouse Pointer Accel Curve (80 reals): inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000, inf, 0.000000, 1.000000, 0.000000
        Mouse Scroll Curves (boolean): false
        Move Lock Speed (real): 10.000000
        Move Report Distance (real): 0.350000
        Multiple Palm Width (real): 75.000000
        Old Mouse Accel Curves (boolean): false
        One Finger Click Wiggle Timeout (real): 0.200000
        Palm Edge Zone Min Point Speed (real): 100.000000
        Palm Edge Zone Width (real): 14.000000
        Palm Eval Timeout (real): 0.100000
        Palm Filter Top Edge Enable (boolean): false
        Palm Pointing Max Reverse Move Distance (real): 0.300000
        Palm Pointing Min Move Distance (real): 8.000000
        Palm Pressure (real): 200.000000
        Palm Split Maximum Distance (real): 4.000000
        Palm Stationary Distance (real): 4.000000
        Palm Stationary Time (real): 2.000000
        Palm Width (real): 21.200000
        Pinch Certain Minimum Movement (real): 8.000000
        Pinch Enable (boolean): true
        Pinch Evaluation Timeout (real): 0.100000
        Pinch Guess Consistent Movement Ratio (real): 0.400000
        Pinch Guess Minimum Movement (real): 2.000000
        Pinch Initial Scale Time Inverse (real): 3.330000
        Pinch Noise Level Squared (real): 2.000000
        Pinch Thumb Minimum Movement (real): 1.410000
        Pinch Zoom Maximum Angle (real): -0.400000
        Pinch Zoom Minimum Events (integer): 3
        Point X Out Scale (real): 1.000000
        Point Y Out Scale (real): 1.000000
        Pointer Accel Curve (80 reals): 32.002000, 0.000000, 2.041600, 0.000000, 52.830000, 0.000000, 3.065600, -32.802560, 119.124000, 0.000000, 4.659200, -116.951680, inf, 0.000000, 9.625600, -708.835840, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000
        Pointer Acceleration (boolean): true
        Pointer Sensitivity (integer): 3
        Pressure Calibration Offset (real): 0.000000
        Pressure Calibration Slope (real): 1.000000
        Pressure Minimum Threshold (real): 0.000000
        Quick Acceleration Factor (real): 0.000000
        Quick Move Distance Thresh (real): 3.000000
        Right Click Second Finger Age Thresh (real): 0.500000
        Right Click Start Time Diff Thresh (real): 0.100000
        Scroll Accel Curve (80 reals): 32.002000, 0.000000, 2.041600, 0.000000, 52.830000, 0.000000, 3.065600, -32.802560, 119.124000, 0.000000, 4.659200, -116.951680, inf, 0.000000, 9.625600, -708.835840, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000
        Scroll Minimum Angle (real): -0.200000
        Scroll Sensitivity (integer): 3
        Scroll X Out Scale (real): 1.000000
        Scroll Y Out Scale (real): 1.000000
        Smooth Accel (boolean): false
        Stationary Pinch Scale Resolution Squared (real): 1.050000
        Stationary Pinch Time (real): 0.100000
        Stationary Wiggle Filter Enabled (boolean): false
        Suppress Immediate Tapdown (boolean): true
        T5R2 Three Finger Click Enable (boolean): false
        Tap Drag Delay (real): 0.000000
        Tap Drag Enable (boolean): false
        Tap Drag Lock Enable (boolean): false
        Tap Drag Stationary Time (real): 0.000000
        Tap Drag Timeout (real): 0.300000
        Tap Enable (boolean): true
        Tap Exclusion Border Width (real): 8.000000
        Tap Maximum Finger Age (real): 1.200000
        Tap Maximum Movement (real): 0.000100
        Tap Min Separation (real): 10.000000
        Tap Minimum Pressure (real): 25.000000
        Tap Move Distance (real): 2.000000
        Tap Paused (boolean): false
        Tap Timeout (real): 0.200000
        Three Finger Click Enable (boolean): true
        Three Finger Swipe Distance Ratio (real): 0.200000
        Three Finger Swipe Distance Thresh (real): 1.500000
        Three Finger Swipe Enable (boolean): true
        Thumb Click Prevention Timeout (real): 0.150000
        Thumb Evaluation Timeout (real): 0.060000
        Thumb Movement Factor (real): 0.500000
        Thumb Pinch Delay Factor (real): 9.000000
        Thumb Pinch Evaluation Timeout (real): 0.250000
        Thumb Pinch Minimum Movement (real): 0.800000
        Thumb Pinch Movement Ratio (real): 20.000000
        Thumb Pinch Threshold Ratio (real): 0.250000
        Thumb Slow Pinch Similarity Ratio (real): 5.000000
        Thumb Speed Factor (real): 0.500000
        Top Edge Tap Exclusion Border Width (real): 3.000000
        Touchpad Device Output Bias on X-Axis (real): 0.000000
        Touchpad Device Output Bias on Y-Axis (real): 0.000000
        Touchpad Stack Version (integer): 2
        Tracing Enabled (boolean): false
        Trend Classifying 2nd-order Motion Enabled (boolean): false
        Trend Classifying Filter Enabled (boolean): true
        Trend Classifying Min Num of Samples (integer): 6
        Trend Classifying Num of Samples (integer): 20
        Trend Classifying Z Threshold (real): 2.575829
        Two Finger Horizontal Close Distance Thresh (real): 50.000000
        Two Finger Move Distance Thresh (real): 7.000000
        Two Finger Pressure Diff Factor (real): 1.650000
        Two Finger Pressure Diff Thresh (real): 32.000000
        Two Finger Scroll Distance Thresh (real): 1.500000
        Two Finger Vertical Close Distance Thresh (real): 45.000000
        Use Custom Haptic Button Force Thresholds (boolean): false
        Use Custom Mouse Pointer Accel Curve (boolean): false
        Use Custom Touchpad Pointer Accel Curve (boolean): true
        Use Custom Touchpad Scroll Accel Curve (boolean): true
        Use Dynamic Haptic Thresholds (boolean): false
        Vertical Scroll Snap Slope (real): 1.191754
        Wiggle Button Down Timeout (real): 0.750000
        Wiggle Max Distance (real): 5.500000
        Wiggle Timeout (real): 0.075000
        Zero Finger Click Enable (boolean): true
      Timer provider:
        Timer IDs: 0
        Deadlines and corresponding timer IDs:

      Captured event converter:
        Orientation scale: 0
        Pressure scale: 1
        Size scale: 0.00392157
        Dimension axes: touch major
        Down time: 0
        Button state: 0x00000000
        Pointer IDs in use: 00000000000000000000000000000000
        Pointer IDs for slot numbers:

      DisplayId: 0