| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 part of template_binding; | 5 part of template_binding; |
| 6 | 6 |
| 7 /** Extensions to the [InputElement] API. */ | 7 /** Extensions to the [InputElement] API. */ |
| 8 class _InputElementExtension extends _ElementExtension { | 8 class _InputElementExtension extends _ElementExtension { |
| 9 _InputElementExtension(InputElement node) : super(node); | 9 _InputElementExtension(InputElement node) : super(node); |
| 10 | 10 |
| 11 InputElement get _node => super._node; | 11 InputElement get _node => super._node; |
| 12 | 12 |
| 13 NodeBinding bind(String name, model, [String path]) { | 13 Bindable bind(String name, value, {bool oneTime: false}) { |
| 14 if (name != 'value' && name != 'checked') { | 14 if (name != 'value' && name != 'checked') { |
| 15 return super.bind(name, model, path); | 15 return super.bind(name, value, oneTime: oneTime); |
| 16 } |
| 17 |
| 18 _node.attributes.remove(name); |
| 19 if (oneTime) { |
| 20 _InputBinding._updateProperty(_node, value, name); |
| 21 return; |
| 16 } | 22 } |
| 17 | 23 |
| 18 _self.unbind(name); | 24 _self.unbind(name); |
| 19 _node.attributes.remove(name); | 25 return bindings[name] = new _InputBinding(_node, value, name); |
| 20 return bindings[name] = name == 'value' ? | |
| 21 new _ValueBinding(_node, model, path) : | |
| 22 new _CheckedBinding(_node, model, path); | |
| 23 } | 26 } |
| 24 } | 27 } |
| OLD | NEW |