From 15707ecbc83d23cc0cae96f308359bb671ff93ad Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Mon, 14 Sep 2026 18:36:27 +0200 Subject: docs: hot reload does not pick up a new component file Adding desktop/Switch.qml while only editing files under modules/ left it out of the running shell's generated qmldir, so the two pages that use Switch could not resolve it and their tiles dropped from the grid. The code was correct; a fresh process rendered it. The directory's qmldir is regenerated only when a file that imports the directory reloads. --- AGENTS.md | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'AGENTS.md') diff --git a/AGENTS.md b/AGENTS.md index cd9de42..82a2b2e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -227,6 +227,16 @@ the whole screen use `ExclusionMode.Ignore`. Hot reload covers adding and removing windows too: the keepalive window above was added to a running shell and took effect on save. +Hot reload does **not** pick up a new component *file*. A directory's generated +`qmldir` is its import index, and it is only regenerated when a file that +imports that directory reloads, not when a file appears in it. Adding +`desktop/Switch.qml` while only editing files under `modules/` left it +invisible to the running shell, so `NetworkPage` and `BluetoothPage` could not +resolve `Switch` and the two modules dropped from the grid; the code was +correct and a fresh `qs` process rendered it. Force the rescan by changing a +file that imports the directory (`desktop/shell.qml`), or restart the shell. +Touch alone does not reload: the content must change. + `qs -p ` runs one directly. `qs -p ipc call ` reaches a running one, which is how `SUPER+v` opens the VM drawer. -- cgit v1.2.3