Skip to content

connections: app shell with independent panes, sidebar panel, tenant sublines - #273

Closed
jseifeddine wants to merge 1 commit into
sol1:mainfrom
jseifeddine:ux/connections-app-shell
Closed

jseifeddine wants to merge 1 commit into
sol1:mainfrom
jseifeddine:ux/connections-app-shell

Conversation

@jseifeddine

@jseifeddine jseifeddine commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

Applies to main directly: #271 and #272, which this used to build on, are merged (1421665..9d7d675). One commit.

Closes #254 (part 3/3).

The header stays; the sidebar and the entries area are two independent scroll panes that always fit the viewport; selecting a folder scrolls the entries pane, not the page (overflow: clip on the body so no script can scroll it). The sidebar becomes a bordered panel with a pinned header band; "host (Tenant)" names read as the host over a quieter tenant line.

Testing

  • Browser: connections-app-shell.spec.mjs.
  • Manual: long table, select another folder: the brand row never leaves the top.

…sublines

The sticky sidebar was sized from the viewport rather than from where
it starts under the header, so at the top of the page its bottom hung
off screen and the page had to be scrolled before the list could be
scrolled to its end. The page is now an app shell: the header stays,
and the sidebar and the entries area are two independent scroll panes
that always fit the viewport. Selecting a folder scrolls the entries
pane, not the page.

The sidebar is a bordered panel: one pinned header band on a surface
tone with the Folders label, a compact new-folder button and the filter
box, then the list with hairline dividers, 46px rows and one 12px edge
for every band. "host (Tenant)" names read as the host over a quieter
tenant line in the entries and search tables, and a role-gate
reconciliation covers API-key users.

Part of sol1#254

connections: scroll only the entries pane on selection, clip the body

jumpToEntriesHeader() used scrollIntoView(), which scrolls every
scrollable ancestor, and a body with overflow hidden can still be
scrolled by script: selecting a folder pushed the brand row and the nav
off the top of the page. Scroll the entries pane to its top instead, and
make the body overflow: clip, which no script can scroll. The body's
border box now spans the full height so the page padding stays inside
the viewport.

Part of sol1#254

tests: app shell with two independent scroll panes and a clipped body (sol1#254)
@davekempe

Copy link
Copy Markdown
Member

Merged into main as e627b0c 325926e thanks Jad. Looks good on our canary. One fix on our side: .entry-name/.entry-sub had no CSS on main so the two spans ran together ("web01.acme.internalAcme Holdings"), added the styling and a test.

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.

Connections UX: sidebar indent, independent scrolling, selection feedback, long-list handling

2 participants