Repository navigation
Highlights
-
Flow: move between computers. Pair two computers running OpenLogi and the pointer and keyboard follow you across the screen edge, with host switching handled for you. Set it up from the new Flow window: pairing, placing the other computer, per-device channels and removal (#1100, #1101, #1102, #1103, #1104, #2261, #2268). Idle Flow connections now stay alive instead of timing out.
1. Find the other computer 2. Confirm the code 3. Place it and choose devices -
A reworked Actions Ring. Aim by direction instead of hitting a slot exactly; hold the trigger and release to pick; choose a small, medium or large ring per device; slots now float translucently with tailed labels.
Directional aiming with tailed labels Small, medium and large -
Magic Mouseβstyle momentum scrolling. Optional per-device glide for a free-spinning smoothed wheel, with adjustable distance per notch, glide shape, max speed, length and repeat speed-up (#1994).
-
New hardware. Headset sidetone on the G535 (#2146) and support for the Spotlight receiver
046d:c53e(#2157). -
Accessibility and GUI polish. Visible focus rings, named icon buttons, Escape closes dialogs, Ctrl shortcuts outside macOS, and better contrast throughout.
-
Platform fixes.
Upgrade notes
- The config schema moves to v11 to add the
[flow]section. Once 0.9.0 saves your config, older OpenLogi builds will refuse to load it. - Flow needs OpenLogi 0.9.0 on both computers.
Thanks to Ruchit M, Pawel, whurst121280, semmelrinde, minovap, corvus2606, Mark, Kaspar Janowsky and ClemMcFly for contributing to this release.
What's Changed
- fix(agent): run pointer-mode shortcuts the focused app binds the same way by @AprilNEA in #2216
- feat: add per-device momentum scrolling by @minovap in #1994
- fix(cli): name logitech devices that expose no hid++ interface by @AprilNEA in #2220
- feat(hid): recognise the Spotlight presenter's USB receiver by @markhhm in #2157
- fix(device): restore the mapping read before host mode by @ClemMcFly in #2222
- fix(macos): flag a shortcut's arrow key with fn as a keyboard does by @AprilNEA in #2218
- fix(cli): say disabled in the windows hid-only note by @AprilNEA in #2224
- test(hidpp): fix the race in the same-header adoption test by @AprilNEA in #2225
- ci(ci): add CI results aggregate job by @AprilNEA in #2227
- ci: read 1Password Environments through AprilNEA/actions by @AprilNEA in #2232
- fix(ci): reclaim root-owned Crowdin downloads before merging catalogs by @AprilNEA in #2236
- chore: add discussion category forms and fix stale receiver notes by @AprilNEA in #2239
- build(linux): recompress deb and arch packages with a long window by @AprilNEA in #2237
- perf(gui): embed the 512 px logo instead of the 1024 px master by @AprilNEA in #2238
- fix(agent): stop mapping native horizontal scroll to thumb-wheel bindings by @AprilNEA in #2245
- fix(hook): debounce linux wheel jitter on the pass-through device by @AprilNEA in #2243
- fix(hook): debounce linux mouse buttons the way libinput does by @AprilNEA in #2247
- openlogi fixture contribute for G915 w/10key by @whurst121280 in #2248
- fix(desktop): label an unassigned key by its native function, not "Off" by @semmelrinde in #2180
- feat(flow): add protocol, transport, discovery, and sessions by @AprilNEA in #1100
- feat(core): add Flow configuration by @AprilNEA in #1101
- feat(hid): add host switching IPC and diagnostic CLI by @AprilNEA in #1102
- feat(agent): add Flow edge detection by @AprilNEA in #1103
- feat(agent): integrate Flow handoff orchestration by @AprilNEA in #1104
- fix(cli): report hid++ 1.0 devices in diag features instead of dumping them by @AprilNEA in #2253
- fix(gui): name actions ring preview slots by their custom label by @AprilNEA in #2266
- feat(gui): add the Flow window and its header button by @AprilNEA in #2261
- fix(gui): stop drawing the unifying logo for nano and lightspeed receivers by @RisenID in #2141
- feat(gui,agent): add headset sidetone control for the G535 by @RisenID in #2146
- feat(flow): pair computers from the Flow window by @AprilNEA in #2268
- test(gui): hold the locale lock in the flow button test by @TheKas in #2279
- fix(hid): route windows vendor reports to the collection that declares them by @AprilNEA in #2283
- test(gui): hold the locale lock in the flow window tests by @AprilNEA in #2288
- test(gui): hold the locale lock in pointer-driven tests by @AprilNEA in #2290
- fix(hook): replay windows wheel impulses in the system scrolling direction by @AprilNEA in #2292
- test(cli): add mx master 2s fixture by @corvus2606 in #2295
- fix(agent): check before re-adding the windows tray icon by @AprilNEA in #2297
- fix(inject): release each typed character and clear its modifiers by @odwrotnie in #2300
- fix(hook): withdraw a macos watchdog exit the tap thread outran by @AprilNEA in #2302
- test(agent): stop reading scheduler stalls as long-press starvation by @AprilNEA in #2304
- test(agent): cover run_worker settling overdue long presses as commands arrive by @AprilNEA in #2306
- fix(inject): log failed scripts and stop waiting on a backgrounded child by @odwrotnie in #2301
- fix(device): name offline Unifying slots from the receiver by @AprilNEA in #2310
- fix(camera): make reset to defaults and profiles stick on macOS by @AprilNEA in #2314
- fix(gui): read each diagnostics row from its own device record by @AprilNEA in #2317
- fix(gui): show a scrollbar on the pairing window's step content by @AprilNEA in #2319
- fix(gui): show scrollbars on the key binding and flow inspector lists by @AprilNEA in #2316
- fix(gui): read DPI only from a device with adjustable DPI by @AprilNEA in #2321
- chore: release v0.9.0 by @AprilNEA[bot] in #2221
New Contributors
- @minovap made their first contribution in #1994
- @markhhm made their first contribution in #2157
- @ClemMcFly made their first contribution in #2222
- @whurst121280 made their first contribution in #2248
- @RisenID made their first contribution in #2141
- @TheKas made their first contribution in #2279
- @corvus2606 made their first contribution in #2295
- @odwrotnie made their first contribution in #2300
Full Changelog: v0.8.20...v0.9.0




