fix(catalog): enable independent scrolling for filter panel#2475
fix(catalog): enable independent scrolling for filter panel#2475manaswinidas wants to merge 7 commits intokubeflow:mainfrom
Conversation
Makes the filter panel in Model Catalog scroll independently from the content area, preventing users from losing their filtering context when scrolling through models. The filter panel now uses sticky positioning with its own scroll container, matching the original design intent where filters remain accessible while browsing model results. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
/retest |
manaswinidas
left a comment
There was a problem hiding this comment.
/lgtm
But needs a second opinion - here's a screen recording that will help the upcoming reviewers decide
Screen.Recording.2026-03-25.at.8.28.55.PM.mov
|
@manaswinidas: you cannot LGTM your own PR. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@Philip-Carneiro: changing LGTM is restricted to collaborators DetailsIn response to this: Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Address review feedback to use PatternFly's native sticky variant instead of custom CSS positioning, following PF best practices. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
Updated to use PatternFly's |
| > | ||
| <Sidebar hasBorder hasGutter> | ||
| <SidebarPanel> | ||
| <SidebarPanel variant="sticky" style={{ maxHeight: '100vh', overflowY: 'auto' }}> |
|
@Philip-Carneiro: changing LGTM is restricted to collaborators DetailsIn response to this: Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
Thanks for pointing this out! The scrollbar does consume some width, but I think the current width behavior is acceptable. The sidebar layout adjusts naturally and the content remains accessible. If this becomes a UX concern during testing, we can revisit with additional width adjustments, but for now the default behavior should work well. |
Add scrollbar-gutter: stable to reserve space for the scrollbar, preventing layout shift and content cutoff when the scrollbar appears. This maintains constant sidebar width regardless of scroll state. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
You're absolutely right about the width issue! I've added |
Adds padding-right to filter content to ensure borders and content are not clipped by the scrollbar. This maintains proper spacing between filter components and the scrollbar edge. Removed scrollbar-gutter approach in favor of content padding, which provides better visual consistency. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
You're right - the previous approaches still had the scrollbar taking width. I've switched to a simpler solution: added |
mturley
left a comment
There was a problem hiding this comment.
@manaswinidas I'm still seeing the edge of the sidebar get cut off. Interestingly, most of the contents have the correct width but it's just the perf view toggle box that is too wide. Here's a screenshot, and then another scrolled to the right:
The 280px minWidth was causing the card to overflow the sidebar width when the scrollbar was present. Removing the constraint allows the card to naturally fit within the sidebar and respect container width limits. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
Good catch! The issue was the |
|
/lgtm |
|
@Philip-Carneiro: changing LGTM is restricted to collaborators DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
@Philip-Carneiro: changing LGTM is restricted to collaborators DetailsIn response to this: Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
|
/approve |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: manaswinidas, Philip-Carneiro The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@mturley can you LGTM if this looks right ? |
|
@manaswinidas I'm so sorry for the nitpick, but can we slightly increase the width of the sidebar so the model performance view toggle text still doesn't wrap? It would look closer to the design |
Set SidebarPanel width to 300px to ensure the "Model performance view" toggle text doesn't wrap, keeping the layout closer to the design while maintaining a reasonable sidebar width. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
No worries at all! I've increased the sidebar width to 300px using PatternFly's |
PatternFly's width prop only accepts percentage values (width_25, width_33, etc.), not pixel values. Using inline style to set a fixed 300px width instead. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Manaswini Das <dasmanaswini10@gmail.com>
|
Fixed TypeScript error - PatternFly's |
mturley
left a comment
There was a problem hiding this comment.
@manaswinidas sorry to continue the nitpicking - it seems like the 300px width doesn't have any effect, and even if I edit the style in my browser to be wider it's not changing the width. The toggle card still is narrow enough that its text wraps and doesn't look like it used to. Testing in mock mode PF theme:
Screenshot from main, wider with the icon and text all inline with the toggle:

This might require some tinkering by hand, AI isn't great at CSS stuff. Happy to take a closer look if you want a hand troubleshooting.



Description
Enables independent scrolling for the filter panel in Model Catalog, preventing users from losing their filtering context when scrolling through model results.
Previously, the filter panel and content area scrolled together, making it difficult for users to maintain context of their filtering selections while browsing models. The filter panel now uses sticky positioning with its own scroll container.
Changes:
How Has This Been Tested?
Manual verification:
Merge criteria:
ok-to-testhas been added to the PR.If you have UI changes
🤖 Generated with Claude Code