fix(ui): fix inbox nesting column alignment

Move child indentation from wrapper paddingLeft into desktopMetaLeading
so the unread dot stays in the leftmost column regardless of nesting
depth. When nesting is enabled, all issue rows get a fixed-width folding
column (chevron or empty spacer) for consistent alignment. Children
indent after the folding column. When nesting is disabled, no folding
column is rendered.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
dotta 2026-04-08 08:15:56 -05:00
parent 58ae23aa2c
commit 2cf2a44d68

View file

@ -1792,21 +1792,26 @@ export function Inbox() {
} }
desktopMetaLeading={ desktopMetaLeading={
<> <>
{depth === 0 && hasChildren ? ( {nestingEnabled ? (
<button depth === 0 && hasChildren ? (
type="button" <button
className="hidden shrink-0 items-center sm:inline-flex" type="button"
onClick={(e) => { className="hidden w-4 shrink-0 items-center justify-center sm:inline-flex"
e.preventDefault(); onClick={(e) => {
e.stopPropagation(); e.preventDefault();
toggleInboxParentCollapse(issue.id); e.stopPropagation();
}} toggleInboxParentCollapse(issue.id);
> }}
<ChevronRight className={cn("h-3.5 w-3.5 transition-transform", isExpanded && "rotate-90")} /> >
</button> <ChevronRight className={cn("h-3.5 w-3.5 transition-transform", isExpanded && "rotate-90")} />
) : depth === 0 ? null : ( </button>
<span className="hidden w-3.5 shrink-0 sm:block" /> ) : (
)} <span className="hidden w-4 shrink-0 sm:block" />
)
) : null}
{depth > 0 ? (
<span className="hidden w-4 shrink-0 sm:block" />
) : null}
<InboxIssueMetaLeading <InboxIssueMetaLeading
issue={iss} issue={iss}
isLive={liveIssueIds.has(iss.id)} isLive={liveIssueIds.has(iss.id)}
@ -1890,7 +1895,6 @@ export function Inbox() {
key={`sel-issue:${child.id}`} key={`sel-issue:${child.id}`}
data-inbox-item data-inbox-item
className="relative" className="relative"
style={{ paddingLeft: 16 }}
onClick={() => setSelectedIndex(cNavIdx)} onClick={() => setSelectedIndex(cNavIdx)}
> >
{canArchiveFromTab ? ( {canArchiveFromTab ? (