2 * r + 2 * t
2f5fcfa2fb
fix: move more properties to global only
2026-04-13 00:06:21 +10:00
2 * r + 2 * t
5cef79d5e0
feat: warn on per monitor confs being accessed without scope
2026-04-12 23:50:46 +10:00
2 * r + 2 * t
0432c4708e
fix: anims should not be per monitor
2026-04-12 23:22:48 +10:00
2 * r + 2 * t
03c1e5060a
feat: print full option path in warning
2026-04-12 23:04:57 +10:00
2 * r + 2 * t
8f579a1e65
fix: ignore most operations if global only
2026-04-12 22:52:18 +10:00
2 * r + 2 * t
129b063381
refactor: move inline getter impls to cpp file
2026-04-12 22:38:36 +10:00
2 * r + 2 * t
e16a70bee7
fix: don't sync global props
...
Prevents warning on syncs as well
2026-04-12 22:26:30 +10:00
2 * r + 2 * t
1385ca15de
feat: add warning on global options using per-mon confs
2026-04-12 22:19:46 +10:00
2 * r + 2 * t
f1fb68c721
feat: add auto save on option changes
2026-04-12 03:58:35 +10:00
2 * r + 2 * t
dd15b1d80e
refactor: static -> anonymous namespace
2026-04-12 03:54:01 +10:00
2 * r + 2 * t
644e70679b
refactor: move attached types to own files
2026-04-12 03:52:51 +10:00
2 * r + 2 * t
41ba4f6271
feat: add per monitor enabled prop
...
Enabled prop should be used in favour of general.excludedScreens. The
latter has been removed
2026-04-12 03:39:58 +10:00
2 * r + 2 * t
bea72b4a64
feat: emit signals on startup
...
Except loaded signal
2026-04-12 03:20:25 +10:00
2 * r + 2 * t
5a13cc22f6
feat: add unknown option toasts
2026-04-12 03:14:04 +10:00
2 * r + 2 * t
ee9dce0268
fix: propagate per monitor overlay signals to main
2026-04-12 03:01:58 +10:00
2 * r + 2 * t
ef00097a51
feat: improve error toasts
2026-04-12 02:46:42 +10:00
2 * r + 2 * t
3e1b235a75
feat: watch parent dirs recursively for changes
2026-04-12 02:41:42 +10:00
2 * r + 2 * t
b987a39d79
feat: debounce reloads
2026-04-12 02:33:29 +10:00
2 * r + 2 * t
1ad6f657ae
fix: don't emit until final retry
...
Also more descriptive error messages
2026-04-12 02:30:33 +10:00
2 * r + 2 * t
72e0a218fd
refactor: move file logic to RootConfig + to own file
2026-04-12 02:07:00 +10:00
2 * r + 2 * t
697784abce
fix: remove key from loaded keys on sync
...
A sync goes through the property setter, which sets the key as loaded.
But a sync is not considered an explicit set, so unset it after
2026-04-12 01:20:40 +10:00
2 * r + 2 * t
9b1b33a388
feat: remove file prefix on signals
2026-04-12 01:19:48 +10:00
2 * r + 2 * t
746d1af826
feat: allow resetting options
...
Also make options changed programmatically (from QML, etc) mark
themselves as loaded
2026-04-12 00:00:56 +10:00
2 * r + 2 * t
93b5fb5f4f
feat: make all configs sparse
2026-04-11 23:53:36 +10:00
2 * r + 2 * t
9be9ec10a6
fix: per monitor configs
...
Use c++ singleton pattern for monitor manager and bind appearance tokens
properly
Also use scoped properties on ContentWindow
2026-04-11 23:44:13 +10:00
2 * r + 2 * t
f65723ad71
feat: never destroy config singletons
...
There are lots of issues with it, so instead give ownership to C++ and
don't destroy on reloads (this does mean it does not reload, but it
doesn't need to anyways)
2026-04-11 22:11:30 +10:00
2 * r + 2 * t
9cf3ad4094
fix: broken config uses + move gif speed adjustments to Config.general
2026-04-11 21:54:27 +10:00
2 * r + 2 * t
ba95924578
fix: dashboard showXXX confs in the wrong file
2026-04-11 21:44:03 +10:00
2 * r + 2 * t
180120801a
feat: add proper anim tokens to Tokens
2026-04-11 21:33:18 +10:00
2 * r + 2 * t
2b2d5a4873
feat: move size tokens to subobject
2026-04-11 21:22:58 +10:00
2 * r + 2 * t
0429650a6e
feat: Tokens attached object points to Config.appearance
2026-04-11 21:16:35 +10:00
2 * r + 2 * t
324acb492a
fix: ensure singletons exist when evaluating attached props
2026-04-11 21:08:09 +10:00
2 * r + 2 * t
4f2b90147e
fix: signal and emit macros -> keywords
...
Only the ones inside macros are unable to use the keywords
2026-04-11 20:16:37 +10:00
2 * r + 2 * t
d5d6f70f52
feat: add load/save + fail signals
2026-04-11 20:10:27 +10:00
2 * r + 2 * t
e283ee2a9f
fix: fully qualify Q_PROPERTY types
2026-04-11 19:49:05 +10:00
2 * r + 2 * t
8f51502f91
fix: use qobject parent
2026-04-11 19:44:22 +10:00
2 * r + 2 * t
edf6184c81
fix: retry reading file before warn
...
Some programs will not write to the file atomically, causing us to read
a malformed JSON while the write is in progress. Add a retry system to
avoid false warnings.
2026-04-11 19:16:44 +10:00
2 * r + 2 * t
a53aff357a
feat: expose default configs to qml
2026-04-11 18:58:45 +10:00
2 * r + 2 * t
08cc492698
fix: ensure tokens are not bound multiple times
2026-04-11 18:36:29 +10:00
2 * r + 2 * t
f15b234753
fix: create tokens singleton when global config is created
...
GlobalConfig depends on TokenConfig to forward properties
2026-04-11 18:35:05 +10:00
2 * r + 2 * t
9a8c5ec7f9
feat: add debug logging
2026-04-11 18:15:59 +10:00
2 * r + 2 * t
71f27bb45f
feat: add per monitor configs
...
Per monitor configs go in a separate file in the monitor dir, e.g.
`monitors/<MONITOR_NAME>/shell.json`
2026-04-11 18:09:21 +10:00
2 * r + 2 * t
a932a68a40
feat: add config scope
2026-04-11 15:40:19 +10:00
2 * r + 2 * t
9f8fd7d660
feat: make tokens separate singleton
2026-04-11 15:36:18 +10:00
2 * r + 2 * t
f4b851b5b3
feat: advanced -> tokens
2026-04-11 15:09:59 +10:00
2 * r + 2 * t
4ff97c8306
fix: crash/block on qml engine reload
2026-04-11 03:27:19 +10:00
2 * r + 2 * t
ff1bde855e
fix: expose config types to qml properly
2026-04-11 03:07:48 +10:00
2 * r + 2 * t
f7aec30ad2
fix: use private constructor for singleton
2026-04-11 02:52:17 +10:00
2 * r + 2 * t
8d73d6037d
fix: move scale back to normal config
2026-04-11 02:38:03 +10:00
2 * r + 2 * t
d530e209b3
feat: add c++ settings
2026-04-11 02:18:55 +10:00