Skip to content

refactor(log-viewer): give the grids one owner for their columns, and the inspector a connected life - #1062

Merged
lcottercertinia merged 3 commits into
refactor-lit-controllersfrom
refactor-grid-column-owner
Sep 18, 2026
Merged

lcottercertinia merged 3 commits into
refactor-lit-controllersfrom
refactor-grid-column-owner

Conversation

@lukecotter

Copy link
Copy Markdown
Collaborator

📝 PR Overview

Three commits that sit on top of #1048: the grids' columns get one owner, the inspector wiring follows the host's connected life, and a visibility wait releases its listener when it resolves.

Stacked on #1048 — merge that one first.

🛠️ Changes made

  • One owner for the grids' columns. The column definitions were built per grid; they now come from one place, so a column added or renamed lands everywhere at once.
  • Inspector wiring on the connected lifetime. InspectorTabController ties a tab's inspector wiring to the host's connected life, alongside the listener controllers refactor(log-viewer): tie global listeners to each view's connected life #1048 introduces, so nothing outlives the view that asked for it.
  • A visibility wait releases its listener. The wait resolved but left its listener attached.

🧩 Type of change (check all applicable)

  • 🐛 Bug fix - something not working as expected
  • ♻️ Refactor - internal changes with no user impact

🔗 Related Issues

None.

✅ Tests added?

  • 👍 yes

InspectorTabController.test.ts and the shared controllerHostStub.

📚 Docs updated?

  • 🙅 not needed

Five grids each carried their own copy of the column view, its overrides, and
the reads and writes either side of them. One controller holds that now, so a
grid declares only its section, presets and tables.
…d life

Three views each held an emphasis, called the wiring by hand on connect and
released it on disconnect. A controller does both now and owns the emphasis,
since nothing outside the subscription decides what it holds. A view that comes
back lights the pick again. The flame chart keeps the plain function: it is no
Lit host, and rests the emphasis itself.
The abort listener stayed on the signal after the element came on screen, so
the observer and the element it watched were held until the controller went.
@lcottercertinia
lcottercertinia merged commit 1da4e0b into refactor-lit-controllers Sep 18, 2026
7 checks passed
@lcottercertinia
lcottercertinia deleted the refactor-grid-column-owner branch September 18, 2026 17:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants