Hi,
is it possible that you have one unnecessary $apply function inside mentioned method. In there you have:
// keep in sync
scope.$apply(function() {
var watchHandler = function(newValue, oldValue) {
if (newValue === undefined) {
// because widget's value() method usually checks if the new value is undefined,
// in which case it returns the current value rather than clearing the field.
newValue = null;
}
if (updating) {
return;
}
if (newValue === oldValue) {
return;
}
widget.$angular_setLogicValue(newValue);
};
if (kendo.ui.MultiSelect && widget instanceof kendo.ui.MultiSelect) {
scope.$watchCollection(kNgModel, watchHandler);
} else {
scope.$watch(kNgModel, watchHandler);
}
});
this is causing issues for us as we have some wrapper around kendo-tooltip where we manually compile content of it because it's dynamic (we get $digest already in progress issue).
So, to get back on the code, why are you using $apply here? You only have two watch statements assigned, which don't require $apply around it.