Skip to content

GridLayoutProvider

Defined in: ui/collection/layout-provider.ts:183

Abstract layout math for a virtualized list. Implementations answer three questions for a list of fixed-size items:

  • how big is the total content?
  • where does item i sit inside that content?
  • which index range is visible in the given viewport?

Variable-height items can be added later via an optional measure callback; this revision assumes fixed-size items.

new GridLayoutProvider(opts): GridLayoutProvider

Defined in: ui/collection/layout-provider.ts:188

GridLayoutOptions

GridLayoutProvider

getContentSize(count): Vec2

Defined in: ui/collection/layout-provider.ts:194

number

Vec2

LayoutProvider.getContentSize


getItemRect(index): Rect

Defined in: ui/collection/layout-provider.ts:202

number

Rect

LayoutProvider.getItemRect


getVisibleRange(viewport, count): [number, number]

Defined in: ui/collection/layout-provider.ts:213

Inclusive start, exclusive end. Returns [0, 0] when nothing is visible.

Rect

number

[number, number]

LayoutProvider.getVisibleRange