')(scope);
- expect(_ace).toBeDefined();
+ scope.$apply();
+ expect(_ace.getReadOnly()).toBeFalsy();
+ $compile('
')(scope);
+ scope.$apply();
+ expect(_ace.getReadOnly()).toBeFalsy();
+ $compile('
')(scope);
+ expect(_ace.getReadOnly()).toBeFalsy();
+ scope.$apply("foo = true");
+ expect(_ace.getReadOnly()).toBeTruthy();
+ scope.$apply("foo = false");
expect(_ace.getReadOnly()).toBeFalsy();
});
});
diff --git a/ui-ace.js b/ui-ace.js
index fefd22b..157f5ba 100644
--- a/ui-ace.js
+++ b/ui-ace.js
@@ -72,9 +72,9 @@ angular.module('ui.ace', [])
session.setMode("ace/mode/" + opts.mode);
}
- if (angular.isDefined(opts.readOnly)) {
- acee.setReadOnly(opts.readOnly);
- }
+ attrs.$observe('readonly', function (value) {
+ acee.setReadOnly(value === 'true');
+ });
// Value Blind
if (angular.isDefined(ngModel)) {