* feat(settings): Allow to set a key when saving settings
* chore(settings)!: Move all history-related config under "history" key
* feat(settings)!: Remove dependency on gsettings
Now every setting is read from the `settings.json` file.
I added a model "default_settings.json" that might be used as a fallback
in the future. The old schema has been gutted out until and kept until
it won't be considered necessary to compile/install anymore.
* chore(build): Remove GTK Schema
* chore(docs): Update Documentation
* chore(docs): Fix some typos
* chore(build): Replace compile_schemas with update_desktop_database
* chore(build): Copy default settings
Edited the meson build file to copy the `default_settings.json` to
`/usr/local/share/libresplit` and insert the path in a generated header
file as per https://mesonbuild.com/Configuration.html
This should fix the "defaults" problem.
* fix(settings): Add missing checks and change copy of default settings
For practicality, the settings file will be stat-ed first and copied
over if it doesn't exist.
* chore(build): Remove update_desktop_database due to actions
* fix(settings): Merge default and user settings
This allows us to update the default settings without breaking existing
setups. If we add a keybind or anything, and it is missing from the user
config, LibreSplit will do its best to fall back to the default value
for each setting.
* enhancement(settings): Rework settings loading logic
* wip: Readme glow-up
* Split some README sections into `docs/` and finished restyling
* Update README.md
Co-authored-by: Pedro Montes Alcalde <pedro.montes.alcalde@gmail.com>
* Update README and Docs
* Update README
* Added links to badges, fixed auto split spelling
* Fixed typo
* Trying to reword the Themes docs
---------
Co-authored-by: Pedro Montes Alcalde <pedro.montes.alcalde@gmail.com>