Add callback for item changes
Merge remote-tracking branch 'origin/on-change-callback' into on-change-callback