fix(portal): keep HAR detail panel in view when selecting lower rows (#740) - #1445
Merged
Cedric Vidal (cedricvidal) merged 4 commits intoOct 2, 2026
Conversation
…icrosoft#740) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
|
Hey idhanth, thank you so much for this PR! I've been wanting to fix this for a while! Could you please try to make it a bit nicer by making it flush on the top and have a border on the bottom?
|
…nd-in to story (microsoft#740) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
Author
|
Thanks for the look, and for merging main in! Pushed a fix: added the bottom border, and the panel now sits flush under the header. The gap was coming from the story not having the app header, so I added a stand-in there to match how it renders in the portal. Updated the "after" video in the description too. Let me know if anything still looks off. |
Cedric Vidal (cedricvidal)
approved these changes
Oct 2, 2026
Cedric Vidal (cedricvidal)
left a comment
Contributor
There was a problem hiding this comment.
LGTM, thank you for your contribution!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Summary
Closes #740.
In the Network tab, selecting a HAR row far down the request list opened the detail panel at the top of the table, off-screen, so you had to scroll back up to see it.
Cause:
DetailPanelinHarNetworkViewer.tsxsits in aflexrow next to the table. It had a fixedmax-h-[600px]and nothing to keep it in view, so it always rendered at the top of the row, however far down the selected request was.Fix (one line): the panel is now
self-start sticky top-12 max-h-[calc(100vh-3rem)].sticky top-12keeps it in view while the page scrolls.top-12clears the portal's 3rem sticky app header.self-startstops the flex row from stretching the panel to the table's full height; otherwise sticky has no effect.max-h-[calc(100vh-3rem)]caps it at the visible height. The panel body already scrolls on its own.Layout.tsx.I checked the conditions sticky depends on:
/runs/:idisn't a full-bleed route, so the window is what scrolls.Carddoesn't).HarNetworkVieweris rendered inRunDetail.tsxare outside any inner scrolling container.Storybook: added
HarNetworkViewer.stories.tsxwith aLongListstory (60 HAR entries, large response bodies, data served by an MSW mock). It reproduces the issue and shows the fix. It's tagged["ai-generated", "needs-work"]like the other component stories.Demos
The recordings use the
LongListstory: scroll about two-thirds down, select a row, keep scrolling.Before
740-before.webm
The row is selected, but the detail panel stays at the top of the table, off-screen.
After
740-after-v2.webm
The detail panel stays pinned next to the selected row while scrolling.
Testing
All runs were local on macOS arm64, with Node 22 and pnpm 10.29.1, on top of
mainatb2a548b9.pnpm install --frozen-lockfile: passes.pnpm test: 233 files / 2995 tests passed, 6 skipped.tsc --noEmit, the portal'slintscript): passes.pnpm storybook,components/HarNetworkViewer→Long List), checked in the browser:Documentation and compatibility
None needed. This is a styling fix to one portal component, with no API, CLI or data changes.
Checklist
HarNetworkViewer.stories.tsx.)up()/down()and keep it CosmosDB-compatible.NOTICE/NOTICE-REVIEW.txtwithpnpm noticeas needed.🤖 Generated with Claude Code