AprilNEA / AprilNEA/OpenLogi

[Feature]: Support Shift + Main Wheel for Horizontal Scrolling

Open
#1,089 0 comments 0 reactions 0 assignees View on GitHub
needs: triage type: feature
Dominant language
Rust
Stars
21k
Forks
675
Avg merge
2d 5h
Merged PRs (30d)
172

Description

### Pre-flight checklist

- [x] I searched existing issues and the [Roadmap](https://github.com/AprilNEA/OpenLogi#roadmap), and this isn't already tracked.

### Problem / motivation

## Description

It would be useful to support using the **Shift key + main scroll wheel** to perform horizontal scrolling on macOS.

### Expected behavior

| Input | Expected action |
|---|---|
| Wheel Up | Vertical scroll up |
| Wheel Down | Vertical scroll down |
| **Shift + Wheel Up** | **Horizontal scroll right** |
| **Shift + Wheel Down** | **Horizontal scroll left** |

This is a common scrolling behavior in macOS applications and would be especially useful with the **MX Master 3S**.

## Current behavior

OpenLogi supports horizontal scrolling through the thumb wheel, for example:

```toml
[devices."serial:...".bindings]
ThumbwheelScrollUp = "HorizontalScrollRight"
ThumbwheelScrollDown = "HorizontalScrollLeft"
```
However, there does not appear to be a way to configure the main wheel + Shift modifier through the TOML configuration.

### Proposed solution

## Proposed configuration

Ideally, this could be configured in TOML, for example:

```toml
[devices."serial:...".bindings]
ShiftScrollUp = "HorizontalScrollRight"
ShiftScrollDown = "HorizontalScrollLeft"
```

The exact configuration syntax can follow the existing OpenLogi design.

### Related area(s)

- [x] GUI
- [ ] CLI
- [ ] Button actions / remapping
- [ ] DPI
- [ ] SmartShift
- [ ] Per-application profiles
- [x] Configuration (TOML)
- [ ] Auto-update
- [ ] Other

### Additional context

The desired behavior would be particularly useful for users who want to keep the thumb wheel assigned to another function while using **Shift + main wheel** for horizontal scrolling.

Thank you for considering this feature.

_No response_

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the existing TOML bindings for ThumbwheelScrollUp and ThumbwheelScrollDown and trace how wheel input and modifiers are represented. Confirm the existing main-wheel vertical behavior, then follow the project's established configuration syntax; done means Shift + Wheel Up/Down produce horizontal right/left on macOS while ordinary wheel behavior remains unchanged.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
desktop
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.