This is a preview release (see milestone). Evaluation and feedback are appreciated! 🙏
Please note: This release didn't work on macOS 14 so I've removed the binary to avoid confusion -- please download preview.3 instead.
Fixes
Memory improvements
- Should be quite a bit leaner overall, and overlay performance certainly improved
- Note: keep an eye on the
Real memcolumn if you watch it in activity monitor. The mainMemorycolumn can be misleading (includes unused, purgeable memory)
- Note: keep an eye on the
Enhancements
-
Completely revamped config editor
- Use the kebab menus next to sections or subsections to:
- restore defaults
- restore saved values
- save and load presets
- Right click individual fields to restore default or restore saved
- Has a basic color picker
- Overlay updates live as you adjust
- One step save (no need to use menu bar)
- All prior functionality should be present, and new features mostly functional, but it's a work in progress -- see known issues
- Only a few built-in presets are present (for grid options). More will be added!
- Use the kebab menus next to sections or subsections to:
-
Active cell highlighting! Color / opacity is customizable
-
More
Hold foractions (formiddle,back, andforwardmouse buttons)
Known issues
-
Validation is wonky. The app and webview do not fully coordinate on this, so be careful, particularly around grid dimensions not exceeding the number of action keys. You can trigger multiple alerts, may cause unexpected behavior, or crash the app if you're particularly agressive about it 😎.
- You may also find that
Restore saveddoesn't work if there are validation errors
- You may also find that
-
Copy/cut/paste don't work in the config editor facepalm
-
I didn't quite put the right
mouse action keysfor theposition_basedpreset. It should beQWERT ASDFG ZXCVB YUIOP HJKL; NM,./so that the right hand handles the bottom half of the grid, rather than being interspersed with the left hand rows. -
Grid line thicknessandText shadow offset X/Yare not affected by loading presets or restoring default/saved- (
Grid line thicknessis affected by theGrid optionspresets/defaults)
- (
-
The
Gridsection is not divided into named subsections (and thus subsets of fields are not savable as presets)- Temporary workaround: you can edit the presets file manually, deleting any undesired fields from a given Grid (or any) preset. It's at
~/Library/Containers/net.sonuscape.mouseless/Data/.mouseless/presets/presets.yaml - (Background: This is because the fields are not on a single object in the underlying config data, so will take additional work to implement.)
- Temporary workaround: you can edit the presets file manually, deleting any undesired fields from a given Grid (or any) preset. It's at
-
Presets for individual fields are not yet implemented (which would be useful specifically for
mouse action keysandsubgrid action keys). -
Once you open the config editor, the three necessary processes for a webview will begin running and stay running for the duration of the program -- I will see if I can make them exit when the config editor is closed.
- Note: the webview is loaded solely from html/css/js files embedded in the app -- no network traffic (not even local) is done, even though one of the processes is called "Mouseless networking".
-
Right clicking checkbox items toggles their values
-
If
edit configkeybinding is set to a non-tap action, the keyup event goes through to the config editor when it opens -
Escape should close color picker (but doesn't yet)
-
The color picker doesn't quite result in full black or white (or fully-saturated red, etc) at the boundaries
-
Updates resulting from color picker interaction are not yet optimized nor throttled, so if you drag continuously on the color picker, expect to exercise your CPU 🔥
Note on data format / migration
Please know that the data format for presets in the final 0.3.0 release is subject to change, but I'll do my best to make migration totally effortless/invisible for users of this prerelease.
Future improvements
I'll be putting a roadmap together soon, but know that the following enhancements are already planned (no need to make a feature request, unless you really want to emphasize your desire for it).
- Better keyboard navigation in the config editor
- A filter/search bar to quickly find a given setting / keybinding
- Highlighting of invalid fields
- In 'save preset' dialog, ability to deselect fields you don't want in the preset
- Improved keybinding entry (i.e. pressing the key(s) instead of typing out their names)
- Preset deletion in the gui
Gridsubsections (and presets)- Presets for individual fields (esp. mouse action keys and subgrid keys)
- Tooltips for various fields
- Locking fields so that they won't be affected by preset loads
- Number inputs for colors (rgba, hex, hsla)
- Will store colors as hsla, so hue information doesn't get lost when set to white/gray/black
- Light and dark mode config editor color schemes
- Auto disabling, marking, and/or hiding fields that aren't relevant (e.g.
always-on subgrid rgbaifalways-on subgridisn't set to true) - Previewing preset diffs (from current values)? Previewing their effect on the overlay?
- Undo functionality