@@ -51,9 +51,13 @@ class ElementScrollHost implements OnInit, OnDestroy, ElementScrollHostBase {
5151 final StreamController <Null > _onUpdate =
5252 StreamController .broadcast (sync : true );
5353
54- late ElementScrollHostBase _scrollHost;
54+ ElementScrollHostBase ? _scrollHost;
5555
56- late bool _disableAutoScroll;
56+ ElementScrollHostBase get scrollHost {
57+ return _scrollHost! ;
58+ }
59+
60+ bool _disableAutoScroll = false ;
5761 bool _usePositionSticky = false ;
5862 bool _useTouchGestureListener = true ;
5963 bool _enableSmoothPushing = false ;
@@ -67,7 +71,7 @@ class ElementScrollHost implements OnInit, OnDestroy, ElementScrollHostBase {
6771 }
6872
6973 void _init () {
70- _scrollHost.dispose ();
74+ _scrollHost? .dispose ();
7175 _scrollHost = ElementScrollHostBase (
7276 _domService, _ngZone, _gestureListenerFactory, element,
7377 usePositionSticky: _usePositionSticky,
@@ -160,81 +164,81 @@ class ElementScrollHost implements OnInit, OnDestroy, ElementScrollHostBase {
160164
161165 @override
162166 void dispose () {
163- _scrollHost .dispose ();
167+ scrollHost .dispose ();
164168 _onUpdate.close ();
165169 }
166170
167171 @override
168- Rectangle calcViewportRect () => _scrollHost .calcViewportRect ();
172+ Rectangle calcViewportRect () => scrollHost .calcViewportRect ();
169173
170174 @override
171- void scrollToPosition (int position) => _scrollHost .scrollToPosition (position);
175+ void scrollToPosition (int position) => scrollHost .scrollToPosition (position);
172176
173177 @override
174- void scrollWithDelta (int delta) => _scrollHost .scrollWithDelta (delta);
178+ void scrollWithDelta (int delta) => scrollHost .scrollWithDelta (delta);
175179
176180 @override
177- void startNativeScrollListener () => _scrollHost .startNativeScrollListener ();
181+ void startNativeScrollListener () => scrollHost .startNativeScrollListener ();
178182
179183 @override
180- int get scrollHeight => _scrollHost .scrollHeight;
184+ int get scrollHeight => scrollHost .scrollHeight;
181185
182186 @override
183- int get clientHeight => _scrollHost .clientHeight;
187+ int get clientHeight => scrollHost .clientHeight;
184188
185189 @override
186- Stream <ScrollHostEvent > get nativeOnScroll => _scrollHost .nativeOnScroll;
190+ Stream <ScrollHostEvent > get nativeOnScroll => scrollHost .nativeOnScroll;
187191
188192 @override
189- bool get usePositionSticky => _scrollHost .usePositionSticky;
193+ bool get usePositionSticky => scrollHost .usePositionSticky;
190194
191195 @override
192- bool get useTouchGestureListener => _scrollHost .useTouchGestureListener;
196+ bool get useTouchGestureListener => scrollHost .useTouchGestureListener;
193197
194198 @override
195- bool get throttleScrollEvents => _scrollHost .throttleScrollEvents;
199+ bool get throttleScrollEvents => scrollHost .throttleScrollEvents;
196200
197201 @override
198- GlobalEventHandlers get scrollbarHost => _scrollHost .scrollbarHost;
202+ GlobalEventHandlers get scrollbarHost => scrollHost .scrollbarHost;
199203
200204 @override
201- int get clientWidth => _scrollHost .clientWidth;
205+ int get clientWidth => scrollHost .clientWidth;
202206
203207 @override
204- num get offsetX => _scrollHost .offsetX;
208+ num get offsetX => scrollHost .offsetX;
205209
206210 @override
207- num get offsetY => _scrollHost .offsetY;
211+ num get offsetY => scrollHost .offsetY;
208212
209213 @override
210- Element get anchorElement => _scrollHost .anchorElement;
214+ Element get anchorElement => scrollHost .anchorElement;
211215
212216 @override
213- Stream <ScrollHostEvent >? get onScroll => _scrollHost .onScroll;
217+ Stream <ScrollHostEvent >? get onScroll => scrollHost .onScroll;
214218
215219 @override
216- PanController ? get panController => _scrollHost .panController;
220+ PanController ? get panController => scrollHost .panController;
217221
218222 @override
219- StickyController ? get stickyController => _scrollHost .stickyController;
223+ StickyController ? get stickyController => scrollHost .stickyController;
220224
221225 @override
222- int get scrollLength => _scrollHost .scrollLength;
226+ int get scrollLength => scrollHost .scrollLength;
223227
224228 @override
225- int get scrollPosition => _scrollHost .scrollPosition;
229+ int get scrollPosition => scrollHost .scrollPosition;
226230
227231 @override
228232 Stream <IntersectionObserverEntry ?> onIntersection (Element ? element) =>
229- _scrollHost .onIntersection (element);
233+ scrollHost .onIntersection (element);
230234
231235 @override
232236 void ngOnDestroy () {
233237 dispose ();
234238 }
235239
236240 @override
237- void stopEvent (WheelEvent event) => _scrollHost .stopEvent (event);
241+ void stopEvent (WheelEvent event) => scrollHost .stopEvent (event);
238242}
239243
240244/// Provides a scroll host that uses the browser window content area.
0 commit comments