tux-review 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -561,11 +561,24 @@
561
561
  // resize/scroll/DOM mutations (rAF-throttled) so markers follow layout
562
562
  // changes: splitter drag, carousel transforms, dialogs opening and
563
563
  // closing, route-level reflows. Invisible targets hide their pin and
564
- // reveal it again when the element becomes visible (SPC 60).
564
+ // reveal it again when the element becomes visible (SPC 60). The
565
+ // overlay host is recomputed on every pass, so a pin restored while
566
+ // its dialog is closed re-parents into the dialog the moment it opens
567
+ // (and back out when it closes) — otherwise it would stay parked in
568
+ // the page layer, covered by the dialog backdrop.
565
569
  let pinRegistry = [];
566
570
  function positionPins() {
571
+ const layer = root() ? root().querySelector('[data-tux-layer]') : null;
567
572
  for (const entry of pinRegistry) {
568
- const { pin, target, inTopLayer } = entry;
573
+ const { pin, target } = entry;
574
+ const host = overlayHostFor(target);
575
+ if (pin.parentElement !== host) {
576
+ host.appendChild(pin);
577
+ entry.inTopLayer = host !== layer;
578
+ pin.style.position = entry.inTopLayer ? 'fixed' : '';
579
+ entry.lastKey = '';
580
+ }
581
+ const inTopLayer = entry.inTopLayer;
569
582
  const rects = target.getClientRects();
570
583
  const rect = target.getBoundingClientRect();
571
584
  const visible = rects.length > 0 && rect.width > 0 && rect.height > 0;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tux-review",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "TUX - TUX UIX review system: attach structured, machine-readable feedback directly to running web UIs (pages, routes, components, elements, states) with a deterministic CLI, canonical JSON and LLM-friendly skills.",
5
5
  "license": "MIT",
6
6
  "author": {