fix: stop nested scroll regions from chaining to the notebook - #10807
Merged
Merged
Conversation
Add overscroll-behavior: contain to output, console, JSON, and table scroll containers so a wheel or trackpad gesture at their edge no longer scrolls the whole notebook.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
All contributors have signed the CLA ✍️ ✅ |
Contributor
Coverage Report for ./frontend
File Coverage
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Contributor
There was a problem hiding this comment.
🔵 Needs a closer look
Two moderate findings remain regarding scratchpad scroll chaining and tooltip positioning under layout containment.
Pull request overview
Improves notebook scrolling stability and isolates cell layout recalculation.
Changes:
- Contains overscroll in outputs, console areas, JSON trees, and tables.
- Reserves stable scrollbar space on
#App. - Adds layout containment to notebook cells.
File summaries
| File | Summary |
|---|---|
frontend/src/css/app/Cell.css |
Adds console overscroll containment and cell layout containment. Two moderate findings remain (1 vote each). |
frontend/src/css/app/App.css |
Reserves the scrollbar gutter. |
frontend/src/components/ui/table.tsx |
Prevents table scroll chaining. |
frontend/src/components/editor/output/Outputs.css |
Contains JSON output overscroll. |
Review details
Suppressed comments (2)
frontend/src/css/app/Cell.css:88
- This declaration is nested under
.interactive, so it only applies to console output inside an interactive notebook cell. The scratchpad rendersConsoleOutputwith its ownoverflow-auto(components/scratchpad/scratchpad.tsx:287-297) but has no.interactiveancestor, so reaching that pane's edge can still chain the wheel gesture to the parent/notebook. Putoverscroll-behavior: containon the base.console-output-arearule while keeping the edit-mode sizing rules nested here.
overscroll-behavior: contain;
frontend/src/css/app/Cell.css:18
contain: layoutmakes the cell a containing block for positioned descendants. The data-table hover tooltip keeps its fixed trigger in the table subtree (components/data-table/hover-tooltip/hover-tooltip.tsx:37-48) but feeds it viewportgetBoundingClientRect()coordinates, so hover tooltips in notebook tables will be offset by the cell's position instead of remaining viewport-fixed. Please either exempt/relocate this containment for such cells or portal the trigger outside the contained cell.
contain: layout;
- Files reviewed: 4/4 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
kirangadhave
marked this pull request as draft
September 11, 2026 23:34
kirangadhave
force-pushed
the
kg/css-project-remaining-work
branch
from
September 14, 2026 22:49
8f1257a to
60c7090
Compare
kirangadhave
marked this pull request as ready for review
September 14, 2026 22:50
kirangadhave
force-pushed
the
kg/css-project-remaining-work
branch
from
September 14, 2026 23:21
60c7090 to
62ccafc
Compare
mscolnick
approved these changes
Sep 15, 2026
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
Add
overscroll-behavior: containto the output area, the console output area, the JSON tree output, and the table scroll wrapper. A wheel or trackpad gesture that reaches the edge of one of these regions no longer scrolls the whole notebook.Closes MO-6579