One device, however you connect it. The same mouse now keeps one device card and one set of settings across receiver and USB connections. Existing configurations migrate automatically and are backed up before the first save. (#876)
A redesigned device workspace makes larger setups easier to manage. A responsive grid, compact cards, clearer battery status, custom device names, scalable interface presets, and a dedicated action menu make devices faster to scan and configure.
Per-app profiles are now editable in the GUI. Pick an installed application from the new catalog, see which profile is active, and customize its button bindings without editing TOML. (#976)
Scrolling is smoother and more configurable. Built-in smooth scrolling, vertical sensitivity controls, preserved fractional motion, rebindable wheel tilt, and fixes for diverted high-resolution wheels deliver more consistent scrolling across main and thumb wheels. (#902, #925, #992)
Buttons can now distinguish a tap from a hold. TOML bindings can assign independent short- and long-press actions with a 500 ms threshold, while held shortcuts remain active until the button is released. (#961)
What's Changed
chore(gui): bump gpui-component to da4f9369 by @AprilNEA in #655
refactor(hid): centralize device identities by @AprilNEA in #831
docs(agents): scale local gate to affected packages by @AprilNEA in #696
feat(core,gui): make the main wheel's tilt rebindable (MX anywhere 2s,...) by @6lv1-blr in #902
fix(linux): install the app icon at every indexed hicolor size by @4ni1ak in #837
fix(gui): recognize mx ergo wheel tilt metadata by @AprilNEA in #905
ci: automate typo checks and consolidate configs by @AprilNEA in #906
refactor(gui): convert app state to entity events by @AprilNEA in #904
fix(mouse): compose thumb-wheel preset labels from translated action names by @NatsUIJM in #910
fix(linux): restore glibc 2.35 package baseline by @AprilNEA in #911
fix(gui): restore full-phrase thumb-wheel preset labels by @AprilNEA in #913
refactor(gui): componentize free-function builders by @AprilNEA in #914
fix(macos): honor XDG state dir in permission diagnostics by @AprilNEA in #915
fix(hid): improve Unifying receiver discovery reliability by @v14 in #853
feat(gui): add per-app profiles and redesign device workspace by @AprilNEA in #907
fix(macos): use reliable async-hid report writes by @sh3ll3x3c in #889
fix(hid): preserve usage pairs in native handle cache by @sh3ll3x3c in #882
fix: show Windows MSI completion and failure state by @mvanhorn in #819
feat(gui): make custom controls keyboard-operable by @AprilNEA in #916
style(gui): refine profile toolbar layout by @AprilNEA in #921
refactor(gui): clean up render paths and element ids by @AprilNEA in #926
fix(hidpp): read Unifying link encryption from bit 5, not the software-present bit by @AprilNEA in #924
refactor(gui): tighten typed rendering and async ownership by @AprilNEA in #931
refactor(gui): move device reads onto swr by @AprilNEA in #929
feat(gui): add scalable interface presets by @AprilNEA in #934
feat(agent): unify button Down/Up/Cancel lifecycle by @AprilNEA in #933
feat(i18n): add Turkish (tr) interface locale by @4ni1ak in #835
feat(gui): add switchable device gallery views by @AprilNEA in #927
refactor(gui): improve shared component quality by @AprilNEA in #966
feat(agent): hold shortcut output until button release by @AprilNEA in #960
fix(thumbwheel): scale remapped vertical scrolling by @hsearcy in #925
refactor(gui): structure app state by domain by @AprilNEA in #974
feat(gui): add installed application catalog picker by @AprilNEA in #976
feat(gui): add polished battery indicator by @AprilNEA in #983
feat(scroll): preserve precise scroll distances by @AprilNEA in #973
ci: replace target caches with sccache by @AprilNEA in #984
feat(scroll): add finite smooth scroll runtime by @AprilNEA in #975
feat(scroll): smooth diverted thumbwheel input by @AprilNEA in #977
feat(gui): polish the app catalog picker and device cards by @AprilNEA in #986
feat(scroll): add vertical scroll sensitivity by @AprilNEA in #978
feat(scroll): expose smooth scrolling setting by @AprilNEA in #979
refactor(gui): strengthen typed render boundaries by @AprilNEA in #981
fix(core,gui,agent): key device settings by identity, not by transport by @yuzi-co in #876
feat(agent): dispatch independent long-press actions by @AprilNEA in #961
refactor(agent): complete thumbwheel state machine by @AprilNEA in #968
fix(hid): preserve diverted wheel reporting by @AprilNEA in #992
v0.7.5 and v0.7.6 were tagged but never published β their macOS packaging failed before a single artifact was uploaded, so no release exists for either. Everything both of them contained ships here, and the changes below cover everything since v0.7.4.
What's Changed
docs(ci): map every CI job to a local command by @davidbudnick in #732