Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1719)

Unified Diff: Source/devtools/front_end/ui/KeyboardShortcut.js

Issue 377253002: DevTools: Add support for showing shortcuts based on shortcuts registry and use it for pause/resume… (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/devtools/front_end/main/Main.js ('k') | Source/devtools/front_end/ui/ShortcutRegistry.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/devtools/front_end/ui/KeyboardShortcut.js
diff --git a/Source/devtools/front_end/ui/KeyboardShortcut.js b/Source/devtools/front_end/ui/KeyboardShortcut.js
index 0d12ed03c7c81262e1641d77eb002a3a9eba35e0..81b2cf081a0a7b36eebfdd27397073f925e39af7 100644
--- a/Source/devtools/front_end/ui/KeyboardShortcut.js
+++ b/Source/devtools/front_end/ui/KeyboardShortcut.js
@@ -119,7 +119,7 @@ WebInspector.KeyboardShortcut.KeyBindings = {};
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] = { code: descriptor["code"] };
+ WebInspector.KeyboardShortcut.KeyBindings[name] = descriptor;
}
}
})();
@@ -200,25 +200,30 @@ WebInspector.KeyboardShortcut.makeDescriptor = function(key, modifiers)
/**
* @param {string} shortcut
- * @return {number}
+ * @return {?WebInspector.KeyboardShortcut.Descriptor}
*/
-WebInspector.KeyboardShortcut.makeKeyFromBindingShortcut = function(shortcut)
+WebInspector.KeyboardShortcut.makeDescriptorFromBindingShortcut = function(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, "Modifiers-only shortcuts are not allowed (encountered <" + shortcut + ">)");
- var key = WebInspector.KeyboardShortcut.Keys[parts[i]] || WebInspector.KeyboardShortcut.KeyBindings[parts[i]];
- if (key && key.shiftKey)
- modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
- return WebInspector.KeyboardShortcut.makeKey(key ? key.code : parts[i].toLowerCase(), modifiers)
+ console.assert(i === parts.length - 1, "Only one key other than modifier is allowed in shortcut <" + shortcut + ">");
+ keyString = parts[i];
+ break;
}
- console.assert(false);
- return 0;
+ console.assert(keyString, "Modifiers-only shortcuts are not allowed (encountered <" + shortcut + ">)");
+ if (!keyString)
+ return null;
+
+ var key = WebInspector.KeyboardShortcut.Keys[keyString] || WebInspector.KeyboardShortcut.KeyBindings[keyString];
+ if (key && key.shiftKey)
+ modifiers |= WebInspector.KeyboardShortcut.Modifiers.Shift;
+ return WebInspector.KeyboardShortcut.makeDescriptor(key ? key : keyString, modifiers);
}
/**
« no previous file with comments | « Source/devtools/front_end/main/Main.js ('k') | Source/devtools/front_end/ui/ShortcutRegistry.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698