| Index: lib/keySelector.js |
| =================================================================== |
| --- a/lib/keySelector.js |
| +++ b/lib/keySelector.js |
| @@ -4,16 +4,13 @@ |
| Cu.import("resource://gre/modules/Services.jsm"); |
| -let validModifiers = |
| -{ |
| - ACCEL: null, |
| - CTRL: "control", |
| - CONTROL: "control", |
| - SHIFT: "shift", |
| - ALT: "alt", |
| - META: "meta", |
| - __proto__: null |
| -}; |
| +let validModifiers = Object.create(null); |
| +validModifiers.ACCEL = null; |
| +validModifiers.CTRL = "control"; |
| +validModifiers.CONTROL = "control"; |
| +validModifiers.SHIFT = "shift"; |
| +validModifiers.ALT = "alt"; |
| +validModifiers.META = "meta"; |
| /** |
| * Sets the correct value of validModifiers.ACCEL. |
| @@ -66,7 +63,7 @@ |
| if (!validModifiers.ACCEL) |
| initAccelKey(); |
| - this._existingShortcuts = {__proto__: null}; |
| + this._existingShortcuts = Object.create(null); |
| let keys = window.document.getElementsByTagName("key"); |
| for (let i = 0; i < keys.length; i++) |
| @@ -95,7 +92,7 @@ |
| let keyModifiers = key.getAttribute("modifiers"); |
| if (keyModifiers) |
| - for each (let modifier in keyModifiers.toUpperCase().match(/\w+/g)) |
| + for (let modifier of keyModifiers.toUpperCase().match(/\w+/g)) |
| if (modifier in validModifiers) |
| keyData[validModifiers[modifier]] = true; |
| @@ -110,7 +107,7 @@ |
| */ |
| selectKey: function(/**String*/ variants) /**Object*/ |
| { |
| - for each (let variant in variants.split(/\s*,\s*/)) |
| + for (let variant of variants.split(/\s*,\s*/)) |
| { |
| if (!variant) |
| continue; |
| @@ -125,7 +122,7 @@ |
| code: null, |
| codeName: null |
| }; |
| - for each (let part in variant.toUpperCase().split(/\s+/)) |
| + for (let part of variant.toUpperCase().split(/\s+/)) |
| { |
| if (part in validModifiers) |
| keyData[validModifiers[part]] = true; |