Index: third_party/polymer/components/iron-input/iron-input.html |
diff --git a/third_party/polymer/components/iron-input/iron-input.html b/third_party/polymer/components/iron-input/iron-input.html |
index 3424b64a3a458d0e18807b3594cda6d355ccde1b..ddb5277ef464d760fc6a0ebe947d5860e87fd8b4 100644 |
--- a/third_party/polymer/components/iron-input/iron-input.html |
+++ b/third_party/polymer/components/iron-input/iron-input.html |
@@ -108,7 +108,6 @@ is separate from validation, and `allowed-pattern` does not affect how the input |
'keypress': '_onKeypress' |
}, |
- /** @suppress {checkTypes} */ |
registered: function() { |
// Feature detect whether we need to patch dispatchEvent (i.e. on FF and IE). |
if (!this._canDispatchEventOnDisabled()) { |
@@ -137,7 +136,12 @@ is separate from validation, and `allowed-pattern` does not affect how the input |
return canDispatch; |
}, |
- _dispatchEventFirefoxIE: function() { |
+ /** |
+ * @this {Node} |
+ * @param {!Event} event |
+ * @return {boolean} |
+ */ |
+ _dispatchEventFirefoxIE: function(event) { |
// Due to Firefox bug, events fired on disabled form controls can throw |
// errors; furthermore, neither IE nor Firefox will actually dispatch |
// events from disabled form controls; as such, we toggle disable around |
@@ -145,8 +149,9 @@ is separate from validation, and `allowed-pattern` does not affect how the input |
// See issue #47 for details |
var disabled = this.disabled; |
this.disabled = false; |
- this._origDispatchEvent.apply(this, arguments); |
+ var defaultPrevented = this._origDispatchEvent(event); |
this.disabled = disabled; |
+ return defaultPrevented |
}, |
get _patternRegExp() { |