Skip to content

feat(rctuikit): Add RCTUITableView for RedboxV1 and RedboxV2 - #3060

Closed
Saadnajmi wants to merge 27 commits into
mainfrom
saadnajmi/dag/v1-rctuikit
Closed

feat(rctuikit): Add RCTUITableView for RedboxV1 and RedboxV2#3060
Saadnajmi wants to merge 27 commits into
mainfrom
saadnajmi/dag/v1-rctuikit

Conversation

@Saadnajmi

Copy link
Copy Markdown
Collaborator

Supersedes

Replaces #3056 with the locally recreated DAG node.

  • Old head: 4e19646203451f3064335c5abbd09bae5b026bdc
  • Old tree: 6f96958c55135ce8d0e4cdbee8f00591699f58d0
  • Preserved review IDs: none; 34 COMMENTED reviews and 16 resolved threads remain linked on the superseded PR
  • Recreated head: eb744bf635af775e7a538a53c3e76692fc065175
  • Recreated tree: fa450a3a62a0f3c82f9e4322164f2fed8b295564
  • Planned base: main

Recreation evidence

The ordered-parent DAG, conflict provenance, consumer-liveness checks, tree-delta confinement, validation logs, and verified bundle are archived in the Phase 1 evidence package. Published as a draft replacement for review.

Saadnajmi and others added 27 commits July 28, 2026 12:42
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Preserve the inset rounded message card while enabling real cell reuse, resetting reused row configuration, fixing the redbox-error identifier, and mapping nil messages through sections.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep the existing AppKit attributed titles, key equivalents, borderless momentary style, layout, and selector actions while fixing accessibility identifiers and retaining block actions through RCTUIAction.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use AppKit-owned reuse preparation and automatic row heights, remove per-row measurement retention, avoid visibleRect coordinate overriding, and guard deselection against selection-query re-entry.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pin the compatibility content view to the AppKit cell so native automatic row heights can derive wrapped label intrinsic height at the actual cell width.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Apply private cell height constraints for explicit delegate heights while leaving automatic rows to AppKit intrinsic sizing and intercell spacing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Exercise AppKit-owned reuse preparation, real wrapped-label automatic sizing, spacing-aware fixed heights, SDK-relative inset geometry, accessibility-tree containment, and selection-query-safe deselection.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Skip invalid nil-message scrolling, restore selectable AppKit message and stack labels, and measure message rows against the scroll view content width while retaining iOS sizing.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Refresh preferred wrapping widths when AppKit assigns cell frames so automatic height fitting sees the current content width before layout.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Constrain each lazily cached header to its declared slot height so AppKit automatic row sizing keeps the explicit header contract.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use NSTableViewRowSizeStyleCustom so NSTableCellView does not override the compatibility label constraints assigned through textField.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Put the macOS message fill and continuous corner radius back on NSTableCellView.layer, matching the baseline layer ownership and CURRENT card rendering.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Associate one primitive-owned height constraint with each header view, deactivate it between reload generations, and update/reactivate it when a delegate reuses the view.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep 5pt vertical containment for subtitle cells and the RedBox stack carve-out so AppKit cannot clip glyph tops at row boundaries.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Assert real post-reload label containment for default and subtitle cells, RedBox-like cell-layer rounding, and one reusable primitive-owned header height constraint across changed heights.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Saadnajmi Saadnajmi changed the title RCTUITableView for RedBox V1/V2 feat(rctuikit): Add RCTUITableView for RedboxV1 and RedboxV2 Jul 31, 2026
@Saadnajmi

Copy link
Copy Markdown
Collaborator Author

🤖 Copilot: Closing this replacement PR because JJ will remain the topology and evolution tool. Continue review on #3056.

@Saadnajmi Saadnajmi closed this Jul 31, 2026
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.

1 participant