Index: third_party/polymer/v1_0/components-chromium/iron-input/iron-input-extracted.js |
diff --git a/third_party/polymer/v1_0/components-chromium/iron-input/iron-input-extracted.js b/third_party/polymer/v1_0/components-chromium/iron-input/iron-input-extracted.js |
index 09f0053b56d78e9b0c929ebb42846eacf8b8aa12..7828cf48d59f37a92dbc48c301067f1ed4ef97f8 100644 |
--- a/third_party/polymer/v1_0/components-chromium/iron-input/iron-input-extracted.js |
+++ b/third_party/polymer/v1_0/components-chromium/iron-input/iron-input-extracted.js |
@@ -28,7 +28,7 @@ It may be desirable to only allow users to enter certain characters. You can use |
is separate from validation, and `allowed-pattern` does not affect how the input is validated. |
<!-- only allow characters that match [0-9] --> |
- <input is="iron-input" prevent-invaild-input allowed-pattern="[0-9]"> |
+ <input is="iron-input" prevent-invalid-input allowed-pattern="[0-9]"> |
@hero hero.svg |
@demo demo/index.html |
@@ -141,11 +141,16 @@ is separate from validation, and `allowed-pattern` does not affect how the input |
// always matches the charCode. |
// None of this makes any sense. |
- var nonPrintable = |
+ // For these keys, ASCII code == browser keycode. |
+ var anyNonPrintable = |
(event.keyCode == 8) || // backspace |
+ (event.keyCode == 13) || // enter |
+ (event.keyCode == 27); // escape |
+ |
+ // For these keys, make sure it's a browser keycode and not an ASCII code. |
+ var mozNonPrintable = |
(event.keyCode == 19) || // pause |
(event.keyCode == 20) || // caps lock |
- (event.keyCode == 27) || // escape |
(event.keyCode == 45) || // insert |
(event.keyCode == 46) || // delete |
(event.keyCode == 144) || // num lock |
@@ -153,7 +158,7 @@ is separate from validation, and `allowed-pattern` does not affect how the input |
(event.keyCode > 32 && event.keyCode < 41) || // page up/down, end, home, arrows |
(event.keyCode > 111 && event.keyCode < 124); // fn keys |
- return !(event.charCode == 0 && nonPrintable); |
+ return !anyNonPrintable && !(event.charCode == 0 && mozNonPrintable); |
}, |
_onKeypress: function(event) { |