Skip to content

[scheduler] Implement timeline virtualization#22339

Draft
romgrk wants to merge 1 commit intomui:masterfrom
romgrk:feat-scheduler-virtualization
Draft

[scheduler] Implement timeline virtualization#22339
romgrk wants to merge 1 commit intomui:masterfrom
romgrk:feat-scheduler-virtualization

Conversation

@romgrk
Copy link
Copy Markdown
Contributor

@romgrk romgrk commented May 5, 2026

Refactor EventTimelinePremium so each resource row is a single BodyRow element containing both the title cell and events cell, preparing the architecture for virtualization.

Key changes:

  • Add TimelineGrid.BodyRow component that registers in CompositeList and shares its index via context to child TitleRow/EventRow
  • Replace dual-SubGrid column layout with CSS subgrid rows
  • Use CSS variable + transform for horizontal scroll instead of native overflow
  • Remove legacy standalone row mode from useTimelineGridRowKeyboard; TitleRow and EventRow now always require a BodyRow ancestor

Refactor EventTimelinePremium so each resource row is a single BodyRow
element containing both the title cell and events cell, preparing the
architecture for virtualization.

Key changes:
- Add TimelineGrid.BodyRow component that registers in CompositeList
  and shares its index via context to child TitleRow/EventRow
- Replace dual-SubGrid column layout with CSS subgrid rows
- Use CSS variable + transform for horizontal scroll instead of
  native overflow
- Remove legacy standalone row mode from useTimelineGridRowKeyboard;
  TitleRow and EventRow now always require a BodyRow ancestor

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@romgrk romgrk added type: enhancement It’s an improvement, but we can’t make up our mind whether it's a bug fix or a new feature. scope: scheduler Changes related to the scheduler. labels May 5, 2026
@code-infra-dashboard
Copy link
Copy Markdown

Deploy preview

https://deploy-preview-22339--material-ui-x.netlify.app/

Bundle size

Bundle Parsed size Gzip size
@mui/x-data-grid 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-pro 0B(0.00%) 0B(0.00%)
@mui/x-data-grid-premium 0B(0.00%) 0B(0.00%)
@mui/x-charts 0B(0.00%) 0B(0.00%)
@mui/x-charts-pro 0B(0.00%) 0B(0.00%)
@mui/x-charts-premium 0B(0.00%) 0B(0.00%)
@mui/x-date-pickers 0B(0.00%) 0B(0.00%)
@mui/x-date-pickers-pro 0B(0.00%) 0B(0.00%)
@mui/x-tree-view 0B(0.00%) 0B(0.00%)
@mui/x-tree-view-pro 0B(0.00%) 0B(0.00%)

Details of bundle changes


Check out the code infra dashboard for more information about this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

scope: scheduler Changes related to the scheduler. type: enhancement It’s an improvement, but we can’t make up our mind whether it's a bug fix or a new feature.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant