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
2 * r + 2 * t
e234990c52
fix: don't play add/remove anim on old delegates
2026-04-10 01:25:09 +10:00
2 * r + 2 * t
b0aeee8b80
fix: allow viewport to be outside of bounds
2026-04-10 01:10:05 +10:00
2 * r + 2 * t
2efe1a93a6
fix: layout delegates after configurable delay
...
Fixes glitches due to delegate sizes changing on creation
Also use the loader state pattern to ensure size is set on same frame as
active
2026-04-10 00:19:32 +10:00
2 * r + 2 * t
e6c1248bef
fix: no need to disconnect signal
...
Signal will auto disconnect on item destruction
2026-04-10 00:19:32 +10:00
2 * r + 2 * t
cc54d9bc5b
fix: remove unnecessary qml context creation
2026-04-09 22:21:30 +10:00
2 * r + 2 * t
9145f83639
fix: remove dead list view anim code
2026-04-09 22:14:52 +10:00
2 * r + 2 * t
8fbf85da86
fix: notif list viewport jumping around on delegate creation
2026-04-09 20:02:35 +10:00
2 * r + 2 * t
1223b5338b
fix: prevent cacheBuffer from extending viewport over height
2026-04-09 19:10:34 +10:00
2 * r + 2 * t
3f72dde918
fix: lazy list view overshoot
2026-04-09 17:49:03 +10:00
2 * r + 2 * t
1d6919b375
Merge branch 'main' into cxx-listview
2026-04-09 15:56:15 +10:00
2 * r + 2 * t
c623b9b688
fix: osd and session bulges
...
Also remove rect-rect edge sink cause it doesn't work
2026-04-09 00:34:45 +10:00
2 * r + 2 * t
77ab4b8350
fix: blobs ignoring updates if moving too slow
2026-04-07 18:39:48 +10:00
2 * r + 2 * t
d778734c67
fix: remove sminNoBulge cause useless
2026-04-07 17:14:50 +10:00
2 * r + 2 * t
31e29c16a8
fix: blob sdf rect-rect edge sink
2026-04-07 17:01:41 +10:00