| Index: third_party/WebKit/Source/devtools/front_end/ui/KeyboardShortcut.js
|
| diff --git a/third_party/WebKit/Source/devtools/front_end/ui/KeyboardShortcut.js b/third_party/WebKit/Source/devtools/front_end/ui/KeyboardShortcut.js
|
| index b40890a720bf814455840ee06a4418a0bc566d15..b0f79d30145c53e6edd60998a4cbb3449a8e0259 100644
|
| --- a/third_party/WebKit/Source/devtools/front_end/ui/KeyboardShortcut.js
|
| +++ b/third_party/WebKit/Source/devtools/front_end/ui/KeyboardShortcut.js
|
| @@ -26,284 +26,268 @@
|
| * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
| * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| */
|
| -
|
| -/**
|
| - * @constructor
|
| - */
|
| -WebInspector.KeyboardShortcut = function()
|
| -{
|
| -};
|
| -
|
| -/**
|
| - * Constants for encoding modifier key set as a bit mask.
|
| - * @see #_makeKeyFromCodeAndModifiers
|
| - */
|
| -WebInspector.KeyboardShortcut.Modifiers = {
|
| - None: 0, // Constant for empty modifiers set.
|
| - Shift: 1,
|
| - Ctrl: 2,
|
| - Alt: 4,
|
| - Meta: 8, // Command key on Mac, Win key on other platforms.
|
| - get CtrlOrMeta()
|
| - {
|
| - // "default" command/ctrl key for platform, Command on Mac, Ctrl on other platforms
|
| - return WebInspector.isMac() ? this.Meta : this.Ctrl;
|
| - },
|
| - get ShiftOrOption()
|
| - {
|
| - // Option on Mac, Shift on other platforms
|
| - return WebInspector.isMac() ? this.Alt : this.Shift;
|
| - }
|
| -};
|
| -
|
| -/** @typedef {!{code: number, name: (string|!Object.<string, string>)}} */
|
| -WebInspector.KeyboardShortcut.Key;
|
| -
|
| -/** @type {!Object.<string, !WebInspector.KeyboardShortcut.Key>} */
|
| -WebInspector.KeyboardShortcut.Keys = {
|
| - Backspace: { code: 8, name: "\u21a4" },
|
| - Tab: { code: 9, name: { mac: "\u21e5", other: "Tab" } },
|
| - Enter: { code: 13, name: { mac: "\u21a9", other: "Enter" } },
|
| - Shift: { code: 16, name: { mac: "\u21e7", other: "Shift" } },
|
| - Ctrl: { code: 17, name: "Ctrl" },
|
| - Esc: { code: 27, name: "Esc" },
|
| - Space: { code: 32, name: "Space" },
|
| - PageUp: { code: 33, name: { mac: "\u21de", other: "PageUp" } }, // also NUM_NORTH_EAST
|
| - PageDown: { code: 34, name: { mac: "\u21df", other: "PageDown" } }, // also NUM_SOUTH_EAST
|
| - End: { code: 35, name: { mac: "\u2197", other: "End" } }, // also NUM_SOUTH_WEST
|
| - Home: { code: 36, name: { mac: "\u2196", other: "Home" } }, // also NUM_NORTH_WEST
|
| - Left: { code: 37, name: "\u2190" }, // also NUM_WEST
|
| - Up: { code: 38, name: "\u2191" }, // also NUM_NORTH
|
| - Right: { code: 39, name: "\u2192" }, // also NUM_EAST
|
| - Down: { code: 40, name: "\u2193" }, // also NUM_SOUTH
|
| - Delete: { code: 46, name: "Del" },
|
| - Zero: { code: 48, name: "0" },
|
| - H: { code: 72, name: "H" },
|
| - N: { code: 78, name: "N" },
|
| - P: { code: 80, name: "P" },
|
| - Meta: { code: 91, name: "Meta" },
|
| - F1: { code: 112, name: "F1" },
|
| - F2: { code: 113, name: "F2" },
|
| - F3: { code: 114, name: "F3" },
|
| - F4: { code: 115, name: "F4" },
|
| - F5: { code: 116, name: "F5" },
|
| - F6: { code: 117, name: "F6" },
|
| - F7: { code: 118, name: "F7" },
|
| - F8: { code: 119, name: "F8" },
|
| - F9: { code: 120, name: "F9" },
|
| - F10: { code: 121, name: "F10" },
|
| - F11: { code: 122, name: "F11" },
|
| - F12: { code: 123, name: "F12" },
|
| - Semicolon: { code: 186, name: ";" },
|
| - NumpadPlus: { code: 107, name: "Numpad +" },
|
| - NumpadMinus: { code: 109, name: "Numpad -" },
|
| - Numpad0: { code: 96, name: "Numpad 0" },
|
| - Plus: { code: 187, name: "+" },
|
| - Comma: { code: 188, name: "," },
|
| - Minus: { code: 189, name: "-" },
|
| - Period: { code: 190, name: "." },
|
| - Slash: { code: 191, name: "/" },
|
| - QuestionMark: { code: 191, name: "?" },
|
| - Apostrophe: { code: 192, name: "`" },
|
| - Tilde: { code: 192, name: "Tilde" },
|
| - LeftSquareBracket: { code: 219, name: "[" },
|
| - RightSquareBracket: { code: 221, name: "]" },
|
| - Backslash: { code: 220, name: "\\" },
|
| - SingleQuote: { code: 222, name: "\'" },
|
| - get CtrlOrMeta()
|
| - {
|
| - // "default" command/ctrl key for platform, Command on Mac, Ctrl on other platforms
|
| - return WebInspector.isMac() ? this.Meta : this.Ctrl;
|
| - },
|
| -};
|
| -
|
| -WebInspector.KeyboardShortcut.KeyBindings = {};
|
| -
|
| -(function() {
|
| - for (var key in WebInspector.KeyboardShortcut.Keys) {
|
| - var descriptor = WebInspector.KeyboardShortcut.Keys[key];
|
| - if (typeof descriptor === "object" && descriptor["code"]) {
|
| - var name = typeof descriptor["name"] === "string" ? descriptor["name"] : key;
|
| - WebInspector.KeyboardShortcut.KeyBindings[name] = descriptor;
|
| - }
|
| - }
|
| -})();
|
| -
|
| /**
|
| - * Creates a number encoding keyCode in the lower 8 bits and modifiers mask in the higher 8 bits.
|
| - * It is useful for matching pressed keys.
|
| - *
|
| - * @param {number|string} keyCode The code of the key, or a character "a-z" which is converted to a keyCode value.
|
| - * @param {number=} modifiers Optional list of modifiers passed as additional parameters.
|
| - * @return {number}
|
| + * @unrestricted
|
| */
|
| -WebInspector.KeyboardShortcut.makeKey = function(keyCode, modifiers)
|
| -{
|
| - if (typeof keyCode === "string")
|
| - keyCode = keyCode.charCodeAt(0) - (/^[a-z]/.test(keyCode) ? 32 : 0);
|
| +WebInspector.KeyboardShortcut = class {
|
| + /**
|
| + * Creates a number encoding keyCode in the lower 8 bits and modifiers mask in the higher 8 bits.
|
| + * It is useful for matching pressed keys.
|
| + *
|
| + * @param {number|string} keyCode The code of the key, or a character "a-z" which is converted to a keyCode value.
|
| + * @param {number=} modifiers Optional list of modifiers passed as additional parameters.
|
| + * @return {number}
|
| + */
|
| + static makeKey(keyCode, modifiers) {
|
| + if (typeof keyCode === 'string')
|
| + keyCode = keyCode.charCodeAt(0) - (/^[a-z]/.test(keyCode) ? 32 : 0);
|
| modifiers = modifiers || WebInspector.KeyboardShortcut.Modifiers.None;
|
| return WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, modifiers);
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {?KeyboardEvent} keyboardEvent
|
| - * @return {number}
|
| - */
|
| -WebInspector.KeyboardShortcut.makeKeyFromEvent = function(keyboardEvent)
|
| -{
|
| + /**
|
| + * @param {?KeyboardEvent} keyboardEvent
|
| + * @return {number}
|
| + */
|
| + static makeKeyFromEvent(keyboardEvent) {
|
| var modifiers = WebInspector.KeyboardShortcut.Modifiers.None;
|
| if (keyboardEvent.shiftKey)
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
|
| if (keyboardEvent.ctrlKey)
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers.Ctrl;
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers.Ctrl;
|
| if (keyboardEvent.altKey)
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers.Alt;
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers.Alt;
|
| if (keyboardEvent.metaKey)
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers.Meta;
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers.Meta;
|
|
|
| // Use either a real or a synthetic keyCode (for events originating from extensions).
|
| - var keyCode = keyboardEvent.keyCode || keyboardEvent["__keyCode"];
|
| + var keyCode = keyboardEvent.keyCode || keyboardEvent['__keyCode'];
|
| return WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, modifiers);
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {?KeyboardEvent} keyboardEvent
|
| - * @return {number}
|
| - */
|
| -WebInspector.KeyboardShortcut.makeKeyFromEventIgnoringModifiers = function(keyboardEvent)
|
| -{
|
| - var keyCode = keyboardEvent.keyCode || keyboardEvent["__keyCode"];
|
| - return WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers(keyCode, WebInspector.KeyboardShortcut.Modifiers.None);
|
| -};
|
| + /**
|
| + * @param {?KeyboardEvent} keyboardEvent
|
| + * @return {number}
|
| + */
|
| + static makeKeyFromEventIgnoringModifiers(keyboardEvent) {
|
| + var keyCode = keyboardEvent.keyCode || keyboardEvent['__keyCode'];
|
| + return WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers(
|
| + keyCode, WebInspector.KeyboardShortcut.Modifiers.None);
|
| + }
|
|
|
| -/**
|
| - * @param {(?KeyboardEvent|?MouseEvent)} event
|
| - * @return {boolean}
|
| - */
|
| -WebInspector.KeyboardShortcut.eventHasCtrlOrMeta = function(event)
|
| -{
|
| + /**
|
| + * @param {(?KeyboardEvent|?MouseEvent)} event
|
| + * @return {boolean}
|
| + */
|
| + static eventHasCtrlOrMeta(event) {
|
| return WebInspector.isMac() ? event.metaKey && !event.ctrlKey : event.ctrlKey && !event.metaKey;
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {!Event} event
|
| - * @return {boolean}
|
| - */
|
| -WebInspector.KeyboardShortcut.hasNoModifiers = function(event)
|
| -{
|
| + /**
|
| + * @param {!Event} event
|
| + * @return {boolean}
|
| + */
|
| + static hasNoModifiers(event) {
|
| return !event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey;
|
| -};
|
| + }
|
|
|
| -/** @typedef {!{key: number, name: string}} */
|
| -WebInspector.KeyboardShortcut.Descriptor;
|
| -
|
| -/**
|
| - * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| - * @param {number=} modifiers
|
| - * @return {!WebInspector.KeyboardShortcut.Descriptor}
|
| - */
|
| -WebInspector.KeyboardShortcut.makeDescriptor = function(key, modifiers)
|
| -{
|
| + /**
|
| + * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| + * @param {number=} modifiers
|
| + * @return {!WebInspector.KeyboardShortcut.Descriptor}
|
| + */
|
| + static makeDescriptor(key, modifiers) {
|
| return {
|
| - key: WebInspector.KeyboardShortcut.makeKey(typeof key === "string" ? key : key.code, modifiers),
|
| - name: WebInspector.KeyboardShortcut.shortcutToString(key, modifiers)
|
| + key: WebInspector.KeyboardShortcut.makeKey(typeof key === 'string' ? key : key.code, modifiers),
|
| + name: WebInspector.KeyboardShortcut.shortcutToString(key, modifiers)
|
| };
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {string} shortcut
|
| - * @return {?WebInspector.KeyboardShortcut.Descriptor}
|
| - */
|
| -WebInspector.KeyboardShortcut.makeDescriptorFromBindingShortcut = function(shortcut)
|
| -{
|
| + /**
|
| + * @param {string} shortcut
|
| + * @return {?WebInspector.KeyboardShortcut.Descriptor}
|
| + */
|
| + static makeDescriptorFromBindingShortcut(shortcut) {
|
| var parts = shortcut.split(/\+(?!$)/);
|
| var modifiers = 0;
|
| var keyString;
|
| for (var i = 0; i < parts.length; ++i) {
|
| - if (typeof WebInspector.KeyboardShortcut.Modifiers[parts[i]] !== "undefined") {
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers[parts[i]];
|
| - continue;
|
| - }
|
| - console.assert(i === parts.length - 1, "Only one key other than modifier is allowed in shortcut <" + shortcut + ">");
|
| - keyString = parts[i];
|
| - break;
|
| + if (typeof WebInspector.KeyboardShortcut.Modifiers[parts[i]] !== 'undefined') {
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers[parts[i]];
|
| + continue;
|
| + }
|
| + console.assert(
|
| + i === parts.length - 1, 'Only one key other than modifier is allowed in shortcut <' + shortcut + '>');
|
| + keyString = parts[i];
|
| + break;
|
| }
|
| - console.assert(keyString, "Modifiers-only shortcuts are not allowed (encountered <" + shortcut + ">)");
|
| + console.assert(keyString, 'Modifiers-only shortcuts are not allowed (encountered <' + shortcut + '>)');
|
| if (!keyString)
|
| - return null;
|
| + return null;
|
|
|
| var key = WebInspector.KeyboardShortcut.Keys[keyString] || WebInspector.KeyboardShortcut.KeyBindings[keyString];
|
| if (key && key.shiftKey)
|
| - modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
|
| + modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
|
| return WebInspector.KeyboardShortcut.makeDescriptor(key ? key : keyString, modifiers);
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| - * @param {number=} modifiers
|
| - * @return {string}
|
| - */
|
| -WebInspector.KeyboardShortcut.shortcutToString = function(key, modifiers)
|
| -{
|
| + /**
|
| + * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| + * @param {number=} modifiers
|
| + * @return {string}
|
| + */
|
| + static shortcutToString(key, modifiers) {
|
| return WebInspector.KeyboardShortcut._modifiersToString(modifiers) + WebInspector.KeyboardShortcut._keyName(key);
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| - * @return {string}
|
| - */
|
| -WebInspector.KeyboardShortcut._keyName = function(key)
|
| -{
|
| - if (typeof key === "string")
|
| - return key.toUpperCase();
|
| - if (typeof key.name === "string")
|
| - return key.name;
|
| - return key.name[WebInspector.platform()] || key.name.other || "";
|
| -};
|
| + /**
|
| + * @param {string|!WebInspector.KeyboardShortcut.Key} key
|
| + * @return {string}
|
| + */
|
| + static _keyName(key) {
|
| + if (typeof key === 'string')
|
| + return key.toUpperCase();
|
| + if (typeof key.name === 'string')
|
| + return key.name;
|
| + return key.name[WebInspector.platform()] || key.name.other || '';
|
| + }
|
|
|
| -/**
|
| - * @param {number} keyCode
|
| - * @param {?number} modifiers
|
| - * @return {number}
|
| - */
|
| -WebInspector.KeyboardShortcut._makeKeyFromCodeAndModifiers = function(keyCode, modifiers)
|
| -{
|
| + /**
|
| + * @param {number} keyCode
|
| + * @param {?number} modifiers
|
| + * @return {number}
|
| + */
|
| + static _makeKeyFromCodeAndModifiers(keyCode, modifiers) {
|
| return (keyCode & 255) | (modifiers << 8);
|
| -};
|
| + }
|
|
|
| -/**
|
| - * @param {number} key
|
| - * @return {!{keyCode: number, modifiers: number}}
|
| - */
|
| -WebInspector.KeyboardShortcut.keyCodeAndModifiersFromKey = function(key)
|
| -{
|
| - return { keyCode: key & 255, modifiers: key >> 8 };
|
| -};
|
| + /**
|
| + * @param {number} key
|
| + * @return {!{keyCode: number, modifiers: number}}
|
| + */
|
| + static keyCodeAndModifiersFromKey(key) {
|
| + return {keyCode: key & 255, modifiers: key >> 8};
|
| + }
|
|
|
| -/**
|
| - * @param {number|undefined} modifiers
|
| - * @return {string}
|
| - */
|
| -WebInspector.KeyboardShortcut._modifiersToString = function(modifiers)
|
| -{
|
| + /**
|
| + * @param {number|undefined} modifiers
|
| + * @return {string}
|
| + */
|
| + static _modifiersToString(modifiers) {
|
| var isMac = WebInspector.isMac();
|
| var m = WebInspector.KeyboardShortcut.Modifiers;
|
| var modifierNames = new Map([
|
| - [m.Ctrl, isMac ? "Ctrl\u2004" : "Ctrl\u200A+\u200A"],
|
| - [m.Alt, isMac ? "opt\u2004" : "Alt\u200A+\u200A"],
|
| - [m.Shift, isMac ? "\u21e7\u2004" : "Shift\u200A+\u200A"],
|
| - [m.Meta, isMac ? "\u2318\u2004" : "Win\u200A+\u200A"]
|
| + [m.Ctrl, isMac ? 'Ctrl\u2004' : 'Ctrl\u200A+\u200A'], [m.Alt, isMac ? 'opt\u2004' : 'Alt\u200A+\u200A'],
|
| + [m.Shift, isMac ? '\u21e7\u2004' : 'Shift\u200A+\u200A'], [m.Meta, isMac ? '\u2318\u2004' : 'Win\u200A+\u200A']
|
| ]);
|
| - return [m.Meta, m.Ctrl, m.Alt, m.Shift].map(mapModifiers).join("");
|
| + return [m.Meta, m.Ctrl, m.Alt, m.Shift].map(mapModifiers).join('');
|
|
|
| /**
|
| * @param {number} m
|
| * @return {string}
|
| */
|
| - function mapModifiers(m)
|
| - {
|
| - return modifiers & m ? /** @type {string} */ (modifierNames.get(m)) : "";
|
| + function mapModifiers(m) {
|
| + return modifiers & m ? /** @type {string} */ (modifierNames.get(m)) : '';
|
| }
|
| + }
|
| +};
|
| +
|
| +/**
|
| + * Constants for encoding modifier key set as a bit mask.
|
| + * @see #_makeKeyFromCodeAndModifiers
|
| + */
|
| +WebInspector.KeyboardShortcut.Modifiers = {
|
| + None: 0, // Constant for empty modifiers set.
|
| + Shift: 1,
|
| + Ctrl: 2,
|
| + Alt: 4,
|
| + Meta: 8, // Command key on Mac, Win key on other platforms.
|
| + get CtrlOrMeta() {
|
| + // "default" command/ctrl key for platform, Command on Mac, Ctrl on other platforms
|
| + return WebInspector.isMac() ? this.Meta : this.Ctrl;
|
| + },
|
| + get ShiftOrOption() {
|
| + // Option on Mac, Shift on other platforms
|
| + return WebInspector.isMac() ? this.Alt : this.Shift;
|
| + }
|
| +};
|
| +
|
| +/** @typedef {!{code: number, name: (string|!Object.<string, string>)}} */
|
| +WebInspector.KeyboardShortcut.Key;
|
| +
|
| +/** @type {!Object.<string, !WebInspector.KeyboardShortcut.Key>} */
|
| +WebInspector.KeyboardShortcut.Keys = {
|
| + Backspace: {code: 8, name: '\u21a4'},
|
| + Tab: {code: 9, name: {mac: '\u21e5', other: 'Tab'}},
|
| + Enter: {code: 13, name: {mac: '\u21a9', other: 'Enter'}},
|
| + Shift: {code: 16, name: {mac: '\u21e7', other: 'Shift'}},
|
| + Ctrl: {code: 17, name: 'Ctrl'},
|
| + Esc: {code: 27, name: 'Esc'},
|
| + Space: {code: 32, name: 'Space'},
|
| + PageUp: {code: 33, name: {mac: '\u21de', other: 'PageUp'}}, // also NUM_NORTH_EAST
|
| + PageDown: {code: 34, name: {mac: '\u21df', other: 'PageDown'}}, // also NUM_SOUTH_EAST
|
| + End: {code: 35, name: {mac: '\u2197', other: 'End'}}, // also NUM_SOUTH_WEST
|
| + Home: {code: 36, name: {mac: '\u2196', other: 'Home'}}, // also NUM_NORTH_WEST
|
| + Left: {code: 37, name: '\u2190'}, // also NUM_WEST
|
| + Up: {code: 38, name: '\u2191'}, // also NUM_NORTH
|
| + Right: {code: 39, name: '\u2192'}, // also NUM_EAST
|
| + Down: {code: 40, name: '\u2193'}, // also NUM_SOUTH
|
| + Delete: {code: 46, name: 'Del'},
|
| + Zero: {code: 48, name: '0'},
|
| + H: {code: 72, name: 'H'},
|
| + N: {code: 78, name: 'N'},
|
| + P: {code: 80, name: 'P'},
|
| + Meta: {code: 91, name: 'Meta'},
|
| + F1: {code: 112, name: 'F1'},
|
| + F2: {code: 113, name: 'F2'},
|
| + F3: {code: 114, name: 'F3'},
|
| + F4: {code: 115, name: 'F4'},
|
| + F5: {code: 116, name: 'F5'},
|
| + F6: {code: 117, name: 'F6'},
|
| + F7: {code: 118, name: 'F7'},
|
| + F8: {code: 119, name: 'F8'},
|
| + F9: {code: 120, name: 'F9'},
|
| + F10: {code: 121, name: 'F10'},
|
| + F11: {code: 122, name: 'F11'},
|
| + F12: {code: 123, name: 'F12'},
|
| + Semicolon: {code: 186, name: ';'},
|
| + NumpadPlus: {code: 107, name: 'Numpad +'},
|
| + NumpadMinus: {code: 109, name: 'Numpad -'},
|
| + Numpad0: {code: 96, name: 'Numpad 0'},
|
| + Plus: {code: 187, name: '+'},
|
| + Comma: {code: 188, name: ','},
|
| + Minus: {code: 189, name: '-'},
|
| + Period: {code: 190, name: '.'},
|
| + Slash: {code: 191, name: '/'},
|
| + QuestionMark: {code: 191, name: '?'},
|
| + Apostrophe: {code: 192, name: '`'},
|
| + Tilde: {code: 192, name: 'Tilde'},
|
| + LeftSquareBracket: {code: 219, name: '['},
|
| + RightSquareBracket: {code: 221, name: ']'},
|
| + Backslash: {code: 220, name: '\\'},
|
| + SingleQuote: {code: 222, name: '\''},
|
| + get CtrlOrMeta() {
|
| + // "default" command/ctrl key for platform, Command on Mac, Ctrl on other platforms
|
| + return WebInspector.isMac() ? this.Meta : this.Ctrl;
|
| + },
|
| };
|
|
|
| -WebInspector.KeyboardShortcut.SelectAll = WebInspector.KeyboardShortcut.makeKey("a", WebInspector.KeyboardShortcut.Modifiers.CtrlOrMeta);
|
| +WebInspector.KeyboardShortcut.KeyBindings = {};
|
| +
|
| +(function() {
|
| + for (var key in WebInspector.KeyboardShortcut.Keys) {
|
| + var descriptor = WebInspector.KeyboardShortcut.Keys[key];
|
| + if (typeof descriptor === 'object' && descriptor['code']) {
|
| + var name = typeof descriptor['name'] === 'string' ? descriptor['name'] : key;
|
| + WebInspector.KeyboardShortcut.KeyBindings[name] = descriptor;
|
| + }
|
| + }
|
| +})();
|
| +
|
| +
|
| +/** @typedef {!{key: number, name: string}} */
|
| +WebInspector.KeyboardShortcut.Descriptor;
|
| +
|
| +
|
| +WebInspector.KeyboardShortcut.SelectAll =
|
| + WebInspector.KeyboardShortcut.makeKey('a', WebInspector.KeyboardShortcut.Modifiers.CtrlOrMeta);
|
|
|