[Bug]: Function-key mapping is positionally offset from the physical keyboard layout
- 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?
GUI (desktop app)
### OpenLogi version
0.7.1
### Operating system
macOS
### OS version & architecture
macOS 26.6.2, Apple Silicon M4
### Device model
MX Mechanical Mini 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?
The logical F-key indices are incorrectly mapped to physical key positions. The overlay labels themselves are correct, but their target coordinates/key indices are shifted, causing F1, F2, etc. to reference the wrong keys.
### Steps to reproduce
1. Open the keyboard configuration/mapping screen for the Logitech keyboard shown.
2. Select or view the **F-key mapping** layer.
3. Enable/display the mapping overlay that connects logical F-keys to the physical keys.
4. Inspect the connector lines between the F-key labels and the keyboard.
5. Observe that the logical keys are mapped to incorrect physical positions—for example, **F1 points to the physical F4 key** instead of F1.
6. Compare the remaining F-key mappings; multiple mappings are similarly offset and the connector lines cross incorrectly.
**Expected:** Each logical F-key should point to the corresponding physical key, e.g. F1 → F1, F2 → F2, etc.
**Actual:** The logical F-key mappings are positionally offset and point to the wrong physical keys.
### Diagnostics report
```markdown
```
### `openlogi list` output
```text
```
### Logs
```shell
```
### 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 by reproducing the issue from the keyboard configuration/mapping screen on the MX Mechanical Mini for Mac, focusing on the F-key mapping overlay. Trace how logical F-key indices become physical key coordinates; done means F1 points to F1, F2 to F2, and the remaining connector lines no longer show the positional offset.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100