[Bug]: Mapping Back Button to Right Click does not work with Fusion 360 orbit mode Tinkercad emulation
- Dominant language
- Rust
- Stars
- 21k
- Forks
- 675
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 172
Description
### Pre-flight checklist
- [x] I searched [existing issues](https://github.com/AprilNEA/OpenLogi/issues?q=is%3Aissue) and this is not a duplicate.
- [x] I am on the [latest release](https://github.com/AprilNEA/OpenLogi/releases/latest) or a recent `master` build.
- [x] I quit **Logi Options+** before running OpenLogi (the two apps fight over HID++ access and only one can own a receiver at a time).
### Which part of OpenLogi?
CLI (the `openlogi` binary)
### OpenLogi version
0.8.1
### Operating system
macOS
### OS version & architecture
26.5.2 (Apple Silicon)
### Device model
MX Master 3 for Mac
### How is the device connected?
Bluetooth (direct, no receiver)
### Affected area(s)
- [ ] Device discovery / detection
- [x] Button remapping
- [ ] DPI control
- [ ] SmartShift
- [ ] Per-application profiles
- [ ] Battery status
- [ ] Settings / configuration (TOML)
- [ ] Auto-update
- [ ] Menu bar / tray
- [ ] Other
### What happened?
In Autodesk Fusion 360 the mouse setup can select Tinkercad emulation. In this setup the right mouse button can perform the transient orbit mode. The right mouse button is also overloaded with selection menu presentation.
This works correctly with the right mouse button in OpenLogi. But if you map the "Back" button to Right Click transient orbit mode does not work with the Back button.
### Steps to reproduce
Set OpenLogi to map Back button to Right Click.
In Fusion 360 set Mouse set Preferences > General: Mouse setup (pan, zoom, orbit) to Tinkercad.
In Fusion 360 press and hold Back button -> only selection menu options are presented. Orbit mode is not invoked.
### Diagnostics report
```markdown
### OpenLogi Diagnostics
**App**
- OpenLogi (GUI): v0.8.1 (release)
- Agent: v0.8.1 (connected)
- IPC protocol: GUI 28 / agent 28
- Inventory: ready
- OS: macOS 26.5.2 (arm64)
- Locale: en-US (UI: follow system)
- Accessibility: granted · Input hook: installed
- Launch at login: yes · Menu bar: yes · Update check: on
- Running from: source build (dev)
- Config: schema 6 · 1 configured device(s) · thumbwheel 27
**Assets**
- Source: user cache · Index: loaded (210 models) · User cache: present
- Cache path: ~/.local/share/openlogi/assets · Bundle assets: absent
**Devices (1)**
- MX Master 3 — mouse (codename: MX Master 3 for Mac)
- Connection: Bluetooth (direct) · Online: yes · Battery: 100% (discharging, full)
- Capabilities: buttons=yes, pointer=yes, lighting=no
- DPI: 1000 dpi (range 200–4000, 77 steps)
- Model: 3b023 (model-ids: b023/4082/0000, ext-model: 03)
- Transports: eQuad, BTLE
- Render: mx_master_3 · direct
```
### `openlogi list` output
```text
(inventory read from the running agent)
MX Master 3 Mac (—, vid=046d pid=b023)
└─ slot 255 ● MX Master 3 for Mac (mouse, wpid=?, battery=100% full (discharging))
model_ids=[b023,4082,0000] ext=03 serial=— unit_id=9d3a8e8c transports=equad+btle
```
### Logs
```shell
2026-08-26T19:02:44.135779Z DEBUG RPC{rpc.deadline=2026-08-26T19:02:54.134523375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: SendRequest
2026-08-26T19:02:44.136329Z DEBUG RPC{rpc.deadline=2026-08-26T19:02:54.134523375Z otel.kind="client" otel.name=Agent.protocol_version rpc.trace_id=00}: tarpc::client: ReceiveResponse
2026-08-26T19:02:44.136480Z DEBUG RPC{rpc.deadline=2026-08-26T19:02:54.136464000Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: SendRequest
2026-08-26T19:02:44.136604Z DEBUG RPC{rpc.deadline=2026-08-26T19:02:54.136464000Z otel.kind="client" otel.name=Agent.snapshot rpc.trace_id=00}: tarpc::client: ReceiveResponse
(inventory read from the running agent)
MX Master 3 Mac (—, vid=046d pid=b023)
└─ slot 255 ● MX Master 3 for Mac (mouse, wpid=?, battery=100% full (discharging))
model_ids=[b023,4082,0000] ext=03 serial=— unit_id=9d3a8e8c transports=equad+btle
```
### macOS permissions (if applicable)
- [x] OpenLogi has **Accessibility** permission (needed to remap buttons via the event tap).
- [x] OpenLogi has **Input Monitoring** permission (needed for Bluetooth-direct devices and capture).
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the openlogi CLI's button-remapping behavior on macOS and reproduce the Back-to-Right-Click mapping with Fusion 360 set to Tinkercad mouse emulation. No source file or test is named; done means holding Back invokes Fusion 360's transient orbit mode while preserving the expected Right Click behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- cli, desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100