@@ -59,6 +59,10 @@ export type Props = {
5959 // issues with isLoading checks.
6060 onEndReached ?: ?( info : { distanceFromEnd : number } ) => void ,
6161 contentContainerStyle ?: any ,
62+ onScroll ?: ( event : Object ) => void ,
63+ onScrollBeginDrag ?: ( event : Object ) => void ,
64+ onScrollEndDrag ?: ( event : Object ) => void ,
65+ onMomentumScrollEnd ?: ( event : Object ) => void ,
6266 onEndReachedThreshold ?: ?number ,
6367 scrollEventThrottle : number ,
6468 renderScrollComponent : ( props : Object ) => ReactElement < any > ,
@@ -144,22 +148,34 @@ export default class MasonryList extends Component {
144148 } ;
145149
146150 _onScroll = event => {
151+ if ( this . props . onScroll ) {
152+ this . props . onScroll ( event ) ;
153+ }
147154 this . _listRefs . forEach ( list => list . _onScroll ( event ) ) ;
148155 } ;
149156
150157 _onScrollBeginDrag = event => {
158+ if ( this . props . onScrollBeginDrag ) {
159+ this . props . onScrollBeginDrag ( event ) ;
160+ }
151161 this . _listRefs . forEach (
152162 list => list . _onScrollBeginDrag && list . _onScrollBeginDrag ( event ) ,
153163 ) ;
154164 } ;
155165
156166 _onScrollEndDrag = event => {
167+ if ( this . props . onScrollEndDrag ) {
168+ this . props . onScrollEndDrag ( event ) ;
169+ }
157170 this . _listRefs . forEach (
158171 list => list . _onScrollEndDrag && list . _onScrollEndDrag ( event ) ,
159172 ) ;
160173 } ;
161174
162175 _onMomentumScrollEnd = event => {
176+ if ( this . props . onMomentumScrollEnd ) {
177+ this . props . onMomentumScrollEnd ( event ) ;
178+ }
163179 this . _listRefs . forEach (
164180 list => list . _onMomentumScrollEnd && list . _onMomentumScrollEnd ( event ) ,
165181 ) ;
0 commit comments