without using WeakChangeListener.