This PR includes the necessary code changes, CI changes and documentation to generate and deploy a full JSON schema for each release and the master branch, which can be used within config files for autocomplete and type checking.
This allows for some options which are not actually bar-level to be separated, which makes some work moving forward a little easier and keeps things cleaner.
Adds two new bar-level options:
- `start_hidden`, which stops a bar from showing when Ironbar starts. It can then be hidden via IPC or auto-hide.
- `autohide`, which takes a delay after which the bar will be hidden when the cursor leaves. Hovering at the screen edge where the bar is located reveals the bar again.
Resolves#167
When no config file is found, the bar will now automatically instead load a hard-coded default consisting of the `focused` and `clock` modules, and a `label` informing you the bar is not configured. Instructions are also printed to the log.
Resolves#25.
Completely refactors the MPD module to be the 'music' module. This now supports both MPD and MPRIS with the same UI for both.
BREAKING CHANGE: The `mpd` module has been renamed to `music`. You will need to update the `type` value in your config and add `player_type` to continue using MPD. You will also need to update your styles.
Adds `on_click_middle`, `on_click_right`, `on_scroll_up`, `on_scroll_down`.
BREAKING CHANGE: `on_click` is now called `on_click_left` for consistency with new options.
Resolves#44.