When scope.apply() was called model:change events were only sent out for the current scope. This meant any updates to inherited properties would not be reflected in Batarang. It also meant any changes to objects that were referenced by multiple scopes would only be updated for the current scope. This would be a relatively common scenario, eg where the page's model is kept in a service and multiple controllers / directives on screen display various elements of it. Since the scopes that share common objects may live outside each others prototype chains, checking for changes in all scopes
and paths currently watched. Hopefully the currently watched qualifier here limits the performance impact.
When scope.apply() was called model:change events were only sent out for the current scope. This meant any updates to inherited properties would not be reflected in Batarang. It also meant any changes to objects that were referenced by multiple scopes would only be updated for the current scope. This would be a relatively common scenario, eg where the page's model is kept in a service and multiple controllers / directives on screen display various elements of it. Since the scopes that share common objects may live outside each others prototype chains, checking for changes in all scopes and paths currently watched. Hopefully the currently watched qualifier here limits the performance impact.
Fixes angular/batarang#201