Ryan Hughes
af5a71347b
Address reviewer findings for bar settings GUI
...
CRITICAL:
- Re-inject working entry into the settings form every time the dialog
opens. Previously the Loader's onLoaded only fires when the
sourceComponent identity changes, so reopening the dialog on the same
widget id (or on a second instance of the same id, e.g. two spacers)
showed stale field values.
- 'Add widget' menu and the centerAnchor dropdown both read
draft.layout[section] without depending on the section array
identity. Mutating the array in place did not invalidate those
bindings, so the menu would show a stale availability list and let
non-spacer widgets be added twice. Layout mutations now replace the
whole object so any binding that reads it re-evaluates.
WARNINGS:
- Save now writes only the diff against the merged defaults so future
bar-defaults changes are not silently shadowed by a stale snapshot.
- FileView onFileChanged handlers simplified to a single reload() —
the explicit second loader call was duplicating loadConfig and
bumping barConfigSerial twice per change (visible flicker).
- userFile onLoaded ignores reloads while the user has an unsaved
working draft so external edits during editing do not clobber the
in-progress state.
- SpinBox forms switched from onValueChanged to onValueModified so the
initial-value bind no longer fires fieldChanged.
- Hyprland window-rule sizes aligned with the FloatingWindow
implicitWidth/Height values (720 main, 380 dialog).
- omarchy-launch-bar-settings falls back to initialTitle when focusing,
so a dialog that has not yet had its title applied still surfaces
the existing instance.
2026-05-14 02:21:47 -04:00
..
2026-05-11 13:01:45 +02:00
2026-05-01 17:40:22 +02:00
2026-05-02 10:24:31 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:56:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 09:53:07 +02:00
2026-05-11 09:53:07 +02:00
2026-05-11 10:40:26 -04:00
2026-05-06 12:18:57 +02:00
2026-05-06 12:12:26 +02:00
2026-05-02 10:24:31 +02:00
2026-05-14 02:21:47 -04:00
2026-05-09 12:04:34 +02:00
2026-05-07 11:49:44 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:56:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-10 14:28:18 +02:00
2026-05-07 16:55:54 +02:00
2026-05-07 16:11:48 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 17:41:30 -04:00
2026-05-06 12:56:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:58:55 +02:00
2026-05-06 12:58:55 +02:00
2026-05-11 15:28:33 -04:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-11 13:01:45 +02:00
2026-05-11 13:01:45 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-02 13:10:47 +02:00
2026-05-07 10:33:12 +02:00
2026-05-07 10:34:28 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-07 12:10:45 +02:00
2026-05-08 21:07:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-03 15:58:32 +02:00
2026-05-03 15:58:32 +02:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-05 21:18:09 +02:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-09 19:55:15 +02:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-10 11:26:59 +02:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-07 16:11:48 +02:00
2026-05-04 13:23:27 +02:00
2026-05-01 17:40:22 +02:00
2026-05-04 13:23:27 +02:00
2026-05-01 17:40:22 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-10 16:47:21 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-04 13:23:27 +02:00
2026-05-05 12:53:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 21:05:34 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:56:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-08 16:02:42 +02:00
2026-05-11 17:41:30 -04:00
2026-05-08 12:40:37 +02:00
2026-05-11 10:40:26 -04:00
2026-05-08 12:40:37 +02:00
2026-05-01 17:40:22 +02:00
2026-05-13 00:20:38 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-10 16:44:09 +02:00
2026-05-12 23:58:27 +02:00
2026-05-06 13:05:20 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-04 08:54:12 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 13:09:33 +02:00
2026-05-01 17:40:22 +02:00
2026-05-07 11:16:40 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-02 11:47:02 +02:00
2026-05-12 23:58:27 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:19:12 +02:00
2026-05-03 17:03:30 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-03 21:01:27 +02:00
2026-05-11 20:01:18 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:11:53 +02:00
2026-05-01 17:40:22 +02:00
2026-05-10 11:26:59 +02:00
2026-05-06 16:26:21 +02:00
2026-05-01 17:40:22 +02:00
2026-05-04 08:57:19 +02:00
2026-05-04 11:18:25 +02:00
2026-05-04 10:31:06 +02:00
2026-05-04 08:57:19 +02:00
2026-05-04 11:36:19 +02:00
2026-05-10 16:47:21 +02:00
2026-05-04 08:57:19 +02:00
2026-05-04 09:57:13 +02:00
2026-05-04 08:57:19 +02:00
2026-05-11 10:40:26 -04:00
2026-05-08 20:52:29 +02:00
2026-05-08 20:52:29 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-05 12:53:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-07 16:48:26 +02:00
2026-05-08 20:44:07 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-05 14:22:03 +02:00
2026-05-01 17:40:22 +02:00
2026-05-08 21:52:42 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-03 15:01:30 +02:00
2026-05-08 20:52:29 +02:00
2026-05-08 20:52:29 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 13:20:34 +02:00
2026-05-14 02:21:47 -04:00
2026-05-10 15:22:41 +02:00
2026-05-10 14:29:51 +02:00
2026-05-10 15:05:34 +02:00
2026-05-10 14:29:51 +02:00
2026-05-10 14:29:51 +02:00
2026-05-11 20:07:18 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:18:57 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:18:57 +02:00
2026-05-06 12:52:18 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 12:12:26 +02:00
2026-05-11 15:29:31 -04:00
2026-05-01 17:40:22 +02:00
2026-05-12 21:57:57 -04:00
2026-05-11 15:29:31 -04:00
2026-05-11 15:29:31 -04:00
2026-05-06 12:56:51 +02:00
2026-05-01 17:40:22 +02:00
2026-05-03 19:36:50 +02:00
2026-05-01 17:40:22 +02:00
2026-05-05 14:22:29 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-06 16:26:21 +02:00
2026-05-06 13:20:34 +02:00
2026-05-06 13:20:34 +02:00
2026-05-06 13:20:34 +02:00
2026-05-06 12:56:51 +02:00
2026-05-06 12:56:51 +02:00
2026-05-06 13:20:34 +02:00
2026-05-06 13:20:34 +02:00
2026-05-06 13:20:34 +02:00
2026-05-11 17:41:30 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-11 10:40:26 -04:00
2026-05-01 17:40:22 +02:00
2026-05-11 15:29:31 -04:00
2026-05-08 16:07:36 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-03 20:26:03 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-08 20:48:36 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 10:40:26 -04:00
2026-05-04 12:38:12 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-06 13:21:55 +02:00
2026-05-06 13:23:12 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-14 02:21:47 -04:00
2026-05-14 02:21:47 -04:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-11 16:32:51 +02:00
2026-05-08 14:24:26 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00
2026-05-01 17:40:22 +02:00