inview_notifier_list 4.0.1 copy "inview_notifier_list: ^4.0.1" to clipboard
inview_notifier_list: ^4.0.1 copied to clipboard

A Flutter package that builds a listview and notifies when the widgets are on screen.

4.0.1 4th April 2026. #

Fixes

  • Fixed deltaBottom using size.height instead of size.width for horizontal scroll lists, causing incorrect in-view detection. (#35, #40) — thanks to @AlexanderFarkas for identifying the fix in #37.

Features

  • Exposed remaining ListView.builder properties: cacheExtent, itemExtent, prototypeItem, findChildIndexCallback, addRepaintBoundaries, addSemanticIndexes, semanticChildCount, dragStartBehavior, keyboardDismissBehavior, restorationId, clipBehavior. (#43, #36) — thanks to @nqhhdev for the initial work in #60.
  • Exposed remaining CustomScrollView properties: cacheExtent, scrollBehavior, semanticChildCount, dragStartBehavior, keyboardDismissBehavior, restorationId, clipBehavior.

Example App

  • Added horizontal scroll example tab.

4.0.0 4th April 2026. #

Breaking Changes

  • Minimum SDK: Dart >=3.0.0, Flutter >=3.10.0. Dropped Dart 2.x support.

Fixes & Improvements

  • Fixed InheritedInViewWidget redeclaring child field from ProxyWidget (compile error on Dart 3.x).
  • Removed unnecessary ! on RenderAbstractViewport.of() (now returns non-nullable in Flutter 3.x).
  • Modernized typedef syntax to generic function type aliases.
  • Replaced switch/break with Dart 3 switch expression for scroll direction.
  • Removed unnecessary Container wrapper in InViewNotifierWidget.
  • Adopted super.key and super parameters across all widget constructors.
  • Replaced Travis CI with GitHub Actions with Codecov integration.
  • Added analysis_options.yaml with flutter_lints.

Tests

  • Comprehensive test suite: 4 → 27 tests covering all public APIs.
  • Tests are now self-contained (no longer import from the example app).
  • Added coverage for: initialInViewIds, onListEndReached, endNotificationOffset, throttleDuration changes, didUpdateWidget id re-registration, dispose cleanup, child optimization, horizontal scroll, reverse, shrinkWrap, and notifyListeners dedup.
  • 92.8% code coverage.

Example App

  • Regenerated Android/iOS/web native scaffolding for Flutter 3.x.
  • Updated TextTheme.headline4 (removed) to headlineSmall.
  • Updated VideoPlayerController.network() (deprecated) to .networkUrl().
  • Updated Color.withOpacity() (deprecated) to .withValues(alpha:).

3.0.0 28th December 2021. #

Breaking Changes

  • Removed the contextCacheCount property. The context will be auto cached and removed.

  • Fixed Cannot get renderObject of inactive element. issue. Thanks to SteepSheep's PR.

  • updated the video example to use latest plugin version.

2.0.0 5th June 2021. #

  • Migrated to Null Safety.

1.0.0 3rd April 2020. #

  • Code refactors.

  • Added support for CustomScrollView with the addition of InViewNotifierCustomScrollView.

  • InViewNotifierList now uses a builder function to build it's children. This is replaced with previously used children property.

  • Added InViewNotifierWidget which gets notified if it is currently inside the viewport condition

    provided by the InViewPortCondition condition. Checkout out the example for usage.

  • No longer need to add widget's context to InViewState and use AnimatedBuilder to get notified if the widget is in-view.

0.0.4 13th December 2019. #

  • Fixed fast scroll bugs.
  • Updated use of ancestorInheritedElementForWidgetOfExactType(depricated) with getElementForInheritedWidgetOfExactType.
  • Added more properties to list like reverse, shrinkWrap.

0.0.3 10th September 2019. #

Added two extra properties padding and physics.

0.0.1 18th June 2019. #

A Flutter package that builds a ListView and notifies when the widgets are on screen within a provided area.

0.0.1+1 19th June 2019. #

Breaking- Fixed the typo for the property name from srollDirection to scrollDirection.

Before(v0.0.1):

InViewNotifierList(
  srollDirection: Axis.vertical,
)

After(v0.0.2):

InViewNotifierList(
  scrollDirection: Axis.vertical,
)
`
496
likes
160
points
5.34k
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A Flutter package that builds a listview and notifies when the widgets are on screen.

Repository (GitHub)
View/report issues
Contributing

License

MIT (license)

Dependencies

flutter, stream_transform

More

Packages that depend on inview_notifier_list