Releases: Toxpox/MouseDrive
Releases · Toxpox/MouseDrive
MouseDrive V0.3.0-a
MouseDrive — Release Notes
v0.3.0-a — Language Support (2026-02-10)
- Language support — Turkish and English UI (switchable in Settings > General)
v0.3.0 — Refactor, Optimization & UI Redesign (2026-02-09)
What's New
- Collapsible settings panel — Left side panel with animated open/close, replaces the old 2-column layout
- Tabbed settings — Steering, Throttle, Brake, and General settings organized into separate tabs
- Improved dashboard — Equal-width progress bars, framed status bar and input state display
- TOML config format — Config files now use TOML instead of INI (via serde + toml crate)
- vJoy reconnect button — Reconnect without restarting the app
Performance
Mutex<f64>replaced withAtomicU64— lock-free hot pathVec<u8>replaced withAlignedBufstack buffer — zero heap allocation in raw input callback
Code Quality
- Removed
#![allow(unsafe_op_in_unsafe_fn)], added granularunsafe {}blocks config_io!macro to reduce config load/save boilerplateslider_f64()/slider_i32()UI helper functions- Deprecated
Frame::rounding()calls updated tocorner_radius()
MouseDrive V0.3.0
MouseDrive — Release Notes
v0.3.0 — Refactor, Optimization & UI Redesign (2026-02-09)
What's New
- Collapsible settings panel — Left side panel with animated open/close, replaces the old 2-column layout
- Tabbed settings — Steering, Throttle, Brake, and General settings organized into separate tabs
- Improved dashboard — Equal-width progress bars, framed status bar and input state display
- TOML config format — Config files now use TOML instead of INI (via serde + toml crate)
- vJoy reconnect button — Reconnect without restarting the app
Performance
Mutex<f64>replaced withAtomicU64— lock-free hot pathVec<u8>replaced withAlignedBufstack buffer — zero heap allocation in raw input callback
Code Quality
- Removed
#![allow(unsafe_op_in_unsafe_fn)], added granularunsafe {}blocks config_io!macro to reduce config load/save boilerplateslider_f64()/slider_i32()UI helper functions- Deprecated
Frame::rounding()calls updated tocorner_radius()