Commit graph

222 commits

Author SHA1 Message Date
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
2 * r + 2 * t
0844013ca7 feat: animate delegates in from visual position
Instead of suddenly appearing, create them at their visual position then
animate them to the layout pos
2026-04-10 02:36:56 +10:00
2 * r + 2 * t
c629eaaa08 fix: don't add delegate to layout until ready delay finish
Also disable y anim if not ready
2026-04-10 01:38:12 +10:00