NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1071 most downloaded on pub.dev
A widget for observing data related to the child widgets being displayed in a ScrollView.
Last release 23 days ago
14 Sep 2026
Release timing varies
gaps range from 8 days to 5 months
Nearly every release is documented
notes for 59 of 59 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
59 releases · first in 2022
refactor: import widgets.dart instead of material.dart by @LinXunFeng in #161
Full Changelog: 1.27.2...1.27.3
package:flutter/widgets.dart instead of package:flutter/material.dart so the package no longer depends on the Material library, compatible with apps migrated to material_ui in Flutter 3.47 by @LinXunFeng in #156.One column per quarter.
fix(ListViewObserver): support SliverPrototypeExtentList by @LinXunFeng in #159
Full Changelog: 1.27.1...1.27.2
SliverPrototypeExtentList (prototypeItem of ListView and ReorderableListView) by @LinXunFeng in #158.fix(ObserverController): correct the scrolling clamped by an outdated scrollExtent by @LinXunFeng in #151
Full Changelog: 1.27.0...1.27.1
Record sliverContext and support conditional shrink wrap observation in standby by @LinXunFeng .
sliverContext and support conditional shrink wrap observation in standby by @LinXunFeng.cancelOnceObserveNotificationBubbling to control notification bubbling by @LinXunFeng.Full Changelog: 1.26.3...1.27.0
sliverContext and support conditional shrink wrap observation in standby by @LinXunFeng.cancelOnceObserveNotificationBubbling to control notification bubbling by @LinXunFeng.Fix incorrect tag comparison in _checkTagChange by @LinXunFeng in #143 .
_checkTagChange by @LinXunFeng in #143.Full Changelog: 1.26.2...1.26.3
Refine the logic of calcAnchorTabIndex method by @LinXunFeng .
calcAnchorTabIndex method by @LinXunFeng.Full Changelog: 1.26.1...1.26.2
Refine the logic of standby by @LinXunFeng .
standby by @LinXunFeng.Full Changelog: 1.26.0...1.26.1
Add await support for animateTo and jumpTo methods by @LinXunFeng .
animateTo and jumpTo methods by @LinXunFeng.Full Changelog: 1.25.2...1.26.0
Fix "ObserverWidgetState was used after being disposed" by @LinXunFeng in #120 and #123 .
Full Changelog: 1.25.1...1.25.2
Fix observation result inaccurate by @LinXunFeng in #113 .
Full Changelog: 1.25.0...1.25.1
Above features are implemented by @LinXunFeng .
customAdjustPosition.Above features are implemented by @LinXunFeng.
Full Changelog: 1.24.0...1.25.0
Add customAdjustPositionDelta .
displayingChildModelMap.customAdjustPositionDelta.Above features are implemented by @LinXunFeng.
Full Changelog: 1.23.0...1.24.0
displayingChildModelMap.customAdjustPositionDelta.Make ObserverWidget listenable.
ObserverWidget listenable.Add scrollNotificationPredicate.
scrollNotificationPredicate.Fix web support by @Ahmadre in #91.
Improve the logic of handleListObserve and handleGridObserve.
handleListObserve and handleGridObserve.Add onPrepareScrollToIndex for jumpTo and animateTo.
onPrepareScrollToIndex for jumpTo and animateTo.jumpTo and animateTo methods.Add observeIntervalForScrolling to set the minimum amount of time to wait for firing observe callback during scrolling.
observeIntervalForScrolling to set the minimum amount of time to wait for firing observe callback during scrolling.isDisplayingSliverInViewport method.observeViewportResultModel.ChatScrollObserverRefIndexType.refIndexType to specify the role of refItemIndex and refItemIndex.SliverObserveContext.visibleFraction and visibleMainAxisSize.Support SliverVariedExtentList in 74.
SliverVariedExtentList in 74.constraints of RenderSliver.CustomScrollView specifies center.To better support NestedScrollView.
customOverlap property.NestedScrollView.Fix keeping position not working by @LinXunFeng in #64
Add a check to determine whether the BuildContext is mounted by @LinXunFeng in #62
Add some scrolling task notifications extending from ObserverScrollNotification.
ObserverScrollNotification.jumpTo method and animateTo method support await.isForbidObserveCallback property.isForbidObserveViewportCallback property.The parameter isFixedHeight in the jumpTo method and animateTo method supports GridView and supports ScrollView built by third-party package by @perci
isFixedHeight in the jumpTo method and animateTo method supports GridView and supports ScrollView built by third-party package by @percival888 in #52.Improve the processing logic of scroll notification when scrolling with the mouse wheel is not smooth by @qiangjindong in #48.
isShrinkWrap once during initialization by @LinXunFeng. #47Supplement missing type conversion adjustments.
Add viewport property to observation model.
Adjust the conversion type of viewport.offset to ScrollPosition by @LiuDongCai in #41.
- Compatible with flutter 3.13.0
dispatchOnceObserve method supports directly getting observation result.
dispatchOnceObserve method supports directly getting observation result.Add SliverObserveContextToBoxAdapter.
SliverObserveContextToBoxAdapter.- ObserverWidget - Safe to use context. #35.
Improve the logic of the conversion type.
Support for keeping position of generative messages (eg: ChatGPT)
Fix getting bad observation result on web. Thanks to @rmasarovic for the test in #31
Fix no getting all child widgets those are displayed when there are separators in ListView. #31
ListView. #31findRenderObject method.The calcAnchorTabIndex method supports GridView.
calcAnchorTabIndex method supports GridView.handleListObserve method and handleGridObserve method.Support custom observation object and observation logic.
Support inserting multiple messages at once.
GridViewObserver is compatible with waterfall flow.SliverViewObserver supports observation of viewport.fix: targetOffset calculate may be negative by @zeqinjie in #21.
Improve [_calculateTargetLayoutOffset] logic.
[_calculateTargetLayoutOffset] logic.jumpTo method and animateTo method both add a parameter [padding].[padding].Catch the exception thrown by getting size.
Modify offset calculation logic in method [_calculateTargetLayoutOffset].
[_calculateTargetLayoutOffset].Add property [autoTriggerObserveTypes] and property [triggerOnObserveType].
[autoTriggerObserveTypes] and property [triggerOnObserveType].[dispatchOnceObserve] adds parameter [isForce].Deprecated [clearIndexOffsetCache], please use [clearScrollIndexCache] instead.
[clearIndexOffsetCache], please use [clearScrollIndexCache] instead.Deprecated [ChatObserverClampinScrollPhysics], please use [ChatObserverClampingScrollPhysics] instead.
[fixedPositionOffset].[ChatObserverClampinScrollPhysics], please use [ChatObserverClampingScrollPhysics] instead.Fix lib not working when itemExtent is set in ListView.
itemExtent is set in ListView.Fix lib not working when shrinkWrap is true in scrollView.
shrinkWrap is true in scrollView.- ChatScrollObserver - Add onHandlePositionCallback.
onHandlePositionCallback.Fix scrollView being stuck when child widget get [size].
[size].Quickly implement the chat session page effect.
[cacheJumpIndexOffset].Scrolling to the specified index location
alignment parameter in the jumpTo and animateTo methods.offset parameter.Scrolling to the specified index location supports the SliverPersistentHeader.
SliverPersistentHeader.ObserverUtils
calcPersistentHeaderExtent: Calculate current extent of RenderSliverPersistentHeader.calcAnchorTabIndex: Calculate the anchor tab index.The jumpTo and animateTo methods add an isFixedHeight parameter to optimize performance when the child widget is of fixed height
jumpTo and animateTo methods add an isFixedHeight parameter to optimize performance when the child widget is of fixed height[leadingMarginToViewport] and [trailingMarginToViewport]SliverList and SliverGridSupports scrolling to the specified index location
- Delete useless code
Implements a way to use without sliver [BuildContext]
- Support GridView - Support the horizontal
GridView- Initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →