Skip to content

Commit 5b9d24f

Browse files
committed
chore(core): clean up _gestureObservers
1 parent 1e51794 commit 5b9d24f

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

packages/core/ui/core/view/view-common.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ export abstract class ViewCommon extends ViewBase implements ViewDefinition {
125125
_setMinWidthNative: (value: CoreTypes.LengthType) => void;
126126
_setMinHeightNative: (value: CoreTypes.LengthType) => void;
127127

128-
public _gestureObservers = {};
128+
public readonly _gestureObservers = {} as Record<GestureTypes, Array<GesturesObserver>>;
129129

130130
_androidContentDescriptionUpdated?: boolean;
131131

@@ -179,7 +179,7 @@ export abstract class ViewCommon extends ViewBase implements ViewDefinition {
179179

180180
onLoaded() {
181181
if (!this.isLoaded) {
182-
const hasTap = this.hasListeners('tap') || this.hasListeners('tapChange') || this.getGestureObservers(GestureTypes.tap);
182+
const hasTap = this.hasListeners('tap') || this.hasListeners('tapChange') || !!this.getGestureObservers(GestureTypes.tap);
183183
const enableTapAnimations = TouchManager.enableGlobalTapAnimations && hasTap;
184184
if (!this.ignoreTouchAnimation && (this.touchAnimation || enableTapAnimations)) {
185185
TouchManager.addAnimations(this);
@@ -288,7 +288,7 @@ export abstract class ViewCommon extends ViewBase implements ViewDefinition {
288288
this._gestureObservers[type].push(gestureObserve(this, type, callback, thisArg));
289289
}
290290

291-
public getGestureObservers(type: GestureTypes): Array<GesturesObserver> {
291+
public getGestureObservers(type: GestureTypes): Array<GesturesObserver> | undefined {
292292
return this._gestureObservers[type];
293293
}
294294

@@ -497,10 +497,12 @@ export abstract class ViewCommon extends ViewBase implements ViewDefinition {
497497

498498
private _disconnectGestureObservers(type: GestureTypes): void {
499499
const observers = this.getGestureObservers(type);
500-
if (observers) {
501-
for (let i = 0; i < observers.length; i++) {
502-
observers[i].disconnect();
503-
}
500+
if (!observers) {
501+
return;
502+
}
503+
504+
for (const observer of observers) {
505+
observer.disconnect();
504506
}
505507
}
506508

0 commit comments

Comments
 (0)