Skip to content

[Feature] Add High Res (pixelwise) Scrolling Support #79

@TheAdarshKp

Description

@TheAdarshKp

Feature description

Add High Resolution pixelwise Scrolling Support instead of the default line by line scrolling

Use case / motivation

It will bring the smooth trackpad like scrolling found on the logi options+ software with Logitech Mx Master series to Mouser

Area of the app

Scroll behavior (inversion, Smart Shift)

OS relevance

Windows only

Alternatives considered

No response

Device info JSON (if relevant)

{
  "device_key": "mx_master_3s",
  "display_name": "MX Master 3S",
  "product_id": "0xC548",
  "product_name": "MX Master 3S",
  "transport": "hidapi",
  "ui_layout": "mx_master_3s",
  "supported_buttons": [
    "middle",
    "gesture",
    "gesture_left",
    "gesture_right",
    "gesture_up",
    "gesture_down",
    "xbutton1",
    "xbutton2",
    "hscroll_left",
    "hscroll_right",
    "mode_shift"
  ],
  "gesture_cids": [
    "0x00C3",
    "0x00D7"
  ],
  "dpi_range": [
    200,
    8000
  ],
  "discovered_features": {
    "REPROG_V4 (0x1B04)": "index 0x09",
    "ADJUSTABLE_DPI (0x2201)": "index 0x0D",
    "SMART_SHIFT (0x2110)": "index 0x0E",
    "BATTERY (0x1004)": "index 0x08"
  },
  "reprog_controls": [
    {
      "index": 0,
      "cid": "0x0050",
      "task": "0x0038",
      "flags": "0x0401",
      "mapped_to": "0x0050",
      "mapping_flags": "0x0000"
    },
    {
      "index": 1,
      "cid": "0x0051",
      "task": "0x0039",
      "flags": "0x0401",
      "mapped_to": "0x0051",
      "mapping_flags": "0x0000"
    },
    {
      "index": 2,
      "cid": "0x0052",
      "task": "0x003A",
      "flags": "0x0531",
      "mapped_to": "0x0052",
      "mapping_flags": "0x0000"
    },
    {
      "index": 3,
      "cid": "0x0053",
      "task": "0x003C",
      "flags": "0x0531",
      "mapped_to": "0x0053",
      "mapping_flags": "0x0000"
    },
    {
      "index": 4,
      "cid": "0x0056",
      "task": "0x003E",
      "flags": "0x0531",
      "mapped_to": "0x0056",
      "mapping_flags": "0x0000"
    },
    {
      "index": 5,
      "cid": "0x00C3",
      "task": "0x00A9",
      "flags": "0x0531",
      "mapped_to": "0x00C3",
      "mapping_flags": "0x0000"
    },
    {
      "index": 6,
      "cid": "0x00C4",
      "task": "0x009D",
      "flags": "0x0531",
      "mapped_to": "0x00C4",
      "mapping_flags": "0x0000"
    },
    {
      "index": 7,
      "cid": "0x00D7",
      "task": "0x00B4",
      "flags": "0x03A0",
      "mapped_to": "0x00D7",
      "mapping_flags": "0x0000"
    }
  ],
  "gesture_candidates": [
    "0x00C3",
    "0x00D7"
  ]
}

Mockups, screenshots, or references

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions