[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
The Orbit transient navigation mode in Autodesk Fusion 360 on Mac requires Shift+Middle mouse button hold. MX Master 3 has extra buttons that should be available to support this mapping. But OpenLogi does not support mapping of mouse buttons to mouse button plus modifier key chording.
Options+ and SteerMouse have the ability to map buttons to button+modifier key including Shift. But OpenLogi does not.
### Proposed solution
Support mapping of modifier keys in conjunction with button assignment mapping.
So, for example, Button4 could equal Shift+Middle Button hold.
### Alternatives considered
There is a workaround: use Tinkercad mouse setup emulation in Fusion 360. This maps orbit to right mouse button. Right mouse is overloaded with other functions, but those don't seem to interfere with right mouse transient orbit mode in Tinkercad emulation. I believe Tinkercad emulation in Fusion 360 is a recent addition.
### Related area(s)
- [ ] GUI
- [ ] CLI
- [x] Button actions / remapping
- [ ] DPI
- [ ] SmartShift
- [ ] Per-application profiles
- [ ] Configuration (TOML)
- [ ] Auto-update
- [ ] Other
### Additional context
See [Fusion preferences reference](https://help.autodesk.com/view/fusion360/ENU/?guid=GUID-878489CD-3A23-4303-8450-C2F4F8E410B1) "Program-specific mouse shortcut presets"
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the existing button actions and remapping path in OpenLogi, then identify how modifier keys and mouse-button holds are currently represented. Done means a button can be assigned to a chord such as Shift plus Middle Button hold, including the Fusion 360 use case described in the issue.
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
- 55/100