diff options
| -rw-r--r-- | docs/content/cookbook/advancedform.ngdoc | 4 | ||||
| -rw-r--r-- | src/markups.js | 6 | ||||
| -rw-r--r-- | src/scenario/Application.js | 1 | ||||
| -rw-r--r-- | src/scenario/dsl.js | 2 | 
4 files changed, 9 insertions, 4 deletions
diff --git a/docs/content/cookbook/advancedform.ngdoc b/docs/content/cookbook/advancedform.ngdoc index b376cbee..747e8891 100644 --- a/docs/content/cookbook/advancedform.ngdoc +++ b/docs/content/cookbook/advancedform.ngdoc @@ -71,8 +71,8 @@ ng:validate="regexp:zip"/><br/><br/>         <input type="text" name="contact.value" ng:required/>          [ <a href="" ng:click="form.contacts.$remove(contact)">X</a> ]       </div> -   <button ng:click="cancel()" disabled="{{master.$equals(form)}}">Cancel</button> -   <button ng:click="save()" disabled="{{$invalidWidgets.visible() || +   <button ng:click="cancel()" ng:disabled="{{master.$equals(form)}}">Cancel</button> +   <button ng:click="save()" ng:disabled="{{$invalidWidgets.visible() ||  master.$equals(form)}}">Save</button> diff --git a/src/markups.js b/src/markups.js index 5e240a92..7edde728 100644 --- a/src/markups.js +++ b/src/markups.js @@ -236,7 +236,11 @@ angularTextMarkup('option', function(text, textNode, parentElement){   */  var NG_BIND_ATTR = 'ng:bind-attr'; -var SPECIAL_ATTRS = {'ng:src': 'src', 'ng:href': 'href'}; +var SPECIAL_ATTRS = {}; +forEach('src,href,checked,disabled,multiple,readonly,selected'.split(','), function(name) { +  SPECIAL_ATTRS['ng:' + name] = name; +}); +  angularAttrMarkup('{{}}', function(value, name, element){    // don't process existing attribute markup    if (angularDirective(name) || angularDirective("@" + name)) return; diff --git a/src/scenario/Application.js b/src/scenario/Application.js index b2c372de..c94581e2 100644 --- a/src/scenario/Application.js +++ b/src/scenario/Application.js @@ -58,6 +58,7 @@ angular.scenario.Application.prototype.navigateTo = function(url, loadFn, errorF      this.executeAction(loadFn);    } else {      frame.css('display', 'none').attr('src', 'about:blank'); +    frame.remove();      this.context.find('#test-frames').append('<iframe>');      frame = this.getFrame_();      frame.load(function() { diff --git a/src/scenario/dsl.js b/src/scenario/dsl.js index e9d68f64..60b05cd6 100644 --- a/src/scenario/dsl.js +++ b/src/scenario/dsl.js @@ -180,7 +180,7 @@ angular.scenario.dsl('input', function() {      return this.addFutureAction("input '" + this.name + "' enter '" + value + "'", function($window, $document, done) {        var input = $document.elements(':input[name="$1"]', this.name);        input.val(value); -      input.trigger('change'); +      input.trigger('keydown');        done();      });    };  | 
