ui: the signals panel's frame is a .ui file
src/ui/signals-panel.ui holds the panel's shape: the box and its margins, the heading, the hint that says what a signal is for, and the list. The rows stay in code -- one per signal, carrying that signal's switch, colour, calibration and drop targets, rebuilt whenever the stream's signals change -- so the file holds the frame, which is the shape the plan gives this slice. The list's width-only size request moved with it, comment and all: a height floor there made the list occupy 120 px whatever it held, which hid the compact rows' height behind it. Read back by a new dump line, `signals panel: labels=2 list=1`, where a lost id reads as `labels=1` or `list=0` instead of a panel quietly missing its hint; `panels: … row_h=26` still reads the list's geometry and the height a row takes. check_ui is at 10 ok.
This commit is contained in:
1 parent
1ccc70c5ac
commit
c37fbdde21
6 files changed
+88
-22
No files matched your search
@@ -1179,3 +1179,14 @@ The search walk starts at `gtk_expander_get_child()`, not at the panel: an expan
|
||||
widget-parent chain at all, so walking up from a search button reaches no ancestor of the panel (see
|
||||
`invariants-gtk-and-chrome.md`). `[defaults] trigger:` prints the same panel's seven spins in tree order, so
|
||||
the two lines together read what the file gave and what the code put in it.
|
||||
|
||||
## `signals panel:`
|
||||
|
||||
```
|
||||
[udpscope] signals panel: labels=2 list=1
|
||||
```
|
||||
|
||||
The signals panel's frame read from the window: the heading and the hint the `.ui` gives it, and the list
|
||||
the rows go in. `labels=1` is a `.ui` that lost one of the two, `list=0` one that lost the list -- both of
|
||||
which otherwise show as a panel quietly missing a piece. `panels: … signals=WxH row_h=26` is the other half:
|
||||
the list's own geometry and the height a row really takes, which is what the compact-row CSS rule is for.
|
||||
Reference in new issue
Block a user