diff --git a/ui/core/bindable.ts b/ui/core/bindable.ts index da860ac59..13fdc8de8 100644 --- a/ui/core/bindable.ts +++ b/ui/core/bindable.ts @@ -124,7 +124,6 @@ export class Binding { updating = false; source: WeakRef; target: WeakRef; - weakEventId: number; private sourceOptions: { instance: WeakRef; property: any }; private targetOptions: { instance: WeakRef; property: any }; diff --git a/ui/core/weak-event-listener.d.ts b/ui/core/weak-event-listener.d.ts index 450f04981..e1b843081 100644 --- a/ui/core/weak-event-listener.d.ts +++ b/ui/core/weak-event-listener.d.ts @@ -2,7 +2,7 @@ declare module "ui/core/weak-event-listener" { import observable = require("data/observable"); /** - * Creates and initialize WeakEventListener. + * Attaches a WeakEventListener. * @param source Observable class which emits the event. * @param eventName The event name. * @param handler The function which should be called when event occurs. @@ -11,7 +11,7 @@ declare module "ui/core/weak-event-listener" { export function addWeakEventListener(source: observable.Observable, eventName: string, handler: (eventData: observable.EventData) => void, target: any) : void; /** - * Removes and clears all resources from WeakEventListener. + * Removes a WeakEventListener. * @param source Observable class which emits the event. * @param eventName The event name. * @param handler The function which should be called when event occurs. diff --git a/ui/list-view/list-view-common.ts b/ui/list-view/list-view-common.ts index f8cdc734f..dad3b652f 100644 --- a/ui/list-view/list-view-common.ts +++ b/ui/list-view/list-view-common.ts @@ -69,8 +69,6 @@ export class ListView extends view.View implements definition.ListView { ) ); - private _itemsChangedWeakListenerId: number; - get items(): any { return this._getValue(ListView.itemsProperty); } @@ -131,9 +129,8 @@ export class ListView extends view.View implements definition.ListView { } public _onItemsPropertyChanged(data: dependencyObservable.PropertyChangeData) { - if (data.oldValue instanceof observable.Observable && types.isDefined(this._itemsChangedWeakListenerId)) { + if (data.oldValue instanceof observable.Observable)) { weakEvents.removeWeakEventListener(data.oldValue, observableArray.ObservableArray.changeEvent, this._onItemsChanged, this); - delete this._itemsChangedWeakListenerId; } if (data.newValue instanceof observable.Observable) {