Skip to content

perf(grid): avoid setState on every horizontal scroll tick #879

Description

@ZhuchkaTriplesix

Summary

VirtualResultGrid._onHorizontalScroll setStates _scrollOffset whenever the offset moves ≥0.5px. Wide grids then rebuild the virtualized body on every pan frame at 120 Hz. Header/body sync does not need a full setState if offset is applied via a ListenableBuilder / NotificationListener on the scrolling layer only.

Scope

  • Drive sticky header / column clip from the scroll controller without rebuilding row items.
  • Keep the 0.5px dead zone or replace with a transform.

Out of scope

  • Column auto-fit sample scan in LayoutBuilder.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    data-gridInteractive data grid, cell editor, filtering, groupingsfrontendTheme parser epic label: frontendperformanceTheme parser epic label: performance

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions