The functions in the $viewChangeListeners are not called, only when selecting the last checkbox. Now this behaviour originates from the use of ng-repeat, but I think we should be able to solve this in 'checklist-model'. The $viewChangeListeners are invoked when $setViewValue is called to change the view value, which currently isn't used in the directive.
Fiddle highlighting the issue (and also shows the issue with ng-repeat and radio buttons):
The functions in the $viewChangeListeners are not called, only when selecting the last checkbox. Now this behaviour originates from the use of ng-repeat, but I think we should be able to solve this in 'checklist-model'. The $viewChangeListeners are invoked when $setViewValue is called to change the view value, which currently isn't used in the directive.
Fiddle highlighting the issue (and also shows the issue with ng-repeat and radio buttons):
https://jsfiddle.net/TheJVH/cbdwwhmp/9/