github cymian/mouseless v0.3.0-preview.2

latest releases: v1.0.0, v1.0.0-preview.5, v0.4.4...
pre-release17 months ago

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 mem column if you watch it in activity monitor. The main Memory column can be misleading (includes unused, purgeable memory)

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!
  • Active cell highlighting! Color / opacity is customizable

  • More Hold for actions (for middle, back, and forward mouse 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 saved doesn't work if there are validation errors
  • Copy/cut/paste don't work in the config editor facepalm

  • I didn't quite put the right mouse action keys for the position_based preset. It should be QWERT 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 thickness and Text shadow offset X/Y are not affected by loading presets or restoring default/saved

    • (Grid line thickness is affected by the Grid options presets/defaults)
  • The Grid section 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.)
  • Presets for individual fields are not yet implemented (which would be useful specifically for mouse action keys and subgrid 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 config keybinding 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
  • Grid subsections (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 rgba if always-on subgrid isn't set to true)
  • Previewing preset diffs (from current values)? Previewing their effect on the overlay?
  • Undo functionality

Don't miss a new mouseless release

NewReleases is sending notifications on new releases.