aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md13
1 files changed, 10 insertions, 3 deletions
diff --git a/AGENTS.md b/AGENTS.md
index ddcf76d..27af75d 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -143,17 +143,24 @@ changing that component. The ones that generalise:
dominfo <vm>` grepped for `Managed save: yes`, polled per VM the way the
agent rows are. It measured 6ms.
- **Tray menus need `//@ pragma UseQApplication`** at the top of the root QML
- file. Without it `SystemTrayItem.display()` and `QsMenuAnchor.open()` only log a qCritical ("not
- started in QApplication mode") and nothing opens. Pragmas are read at launch,
+ file. Without it `SystemTrayItem.display()` and `QsMenuAnchor.open()` only
+ log a qCritical ("not started in QApplication mode") and nothing opens. Pragmas are read at launch,
before the first import, so adding or changing one needs a restart, not a hot
reload. `desktop/shell.qml` carries it.
- **A tray menu is a separate popup, and hovering it un-hovers the island.**
- The pills lose the pointer, so the hide timer would close the island under
+ The pills lose the pointer and the hide timer would close the island under
the open menu, so the island holds itself shown while one is open.
`display()` reports no close, and holding until the pointer returned left
the island stuck open after a menu's Quit, with the pointer on the menu.
Menus open through a `QsMenuAnchor` instead, whose `closed` signal fires on
any dismissal and ends the hold.
+- **`SplitParser` can hand a line over with the previous blank line still
+ attached.** Streaming `top -b`, every frame header after the first arrived
+ as `"\ntop - ..."`, so `startsWith("top - ")` matched once and the
+ process table never filled, with nothing in the log. Match with
+ `/^\s*.../`. A shell pipe shows no such thing, so test the parse inside
+ `qs`, and capture with a live reader rather than a killed `top > file`,
+ which flushes on exit and hides buffering too.
- **A mouse button nothing accepts does not reliably fall through to a
catcher underneath.** The drawer's back button (`BTN_SIDE`, `Qt.BackButton`)
never reached a full-surface `MouseArea` below the panel while a page was