private void SetWellKnownShortcuts()

in src/dotnet/JetBrains.PresentationAssistant/ReSharperActionShortcutProvider.cs [288:323]


        private void SetWellKnownShortcuts(Shortcut shortcut, IActionDefWithId def,
                                           bool showSecondarySchemeIfSame)
        {
            switch (def.ActionId)
            {
                // The Escape action doesn't have a bound shortcut, or a VS override
                case "Escape":
                    shortcut.VsShortcut = GetShortcutSequence("Escape");
                    break;

                // Only happens when we're tabbing around hotspots in Live Templates. Useful to show
                case "TextControl.Tab":
                    shortcut.VsShortcut = GetShortcutSequence("Tab");
                    break;

                case "TextControl.Enter":
                    shortcut.VsShortcut = GetShortcutSequence("Enter");
                    break;

                // The shortcuts for the overridden VS "go to" commands come from the current
                // binding, but if we're in the IntelliJ binding, they get removed, so we have
                // to hard code them.
                case "GotoDeclaration":
                    if (shortcut.VsShortcut == null)
                        shortcut.VsShortcut = GetShortcutSequence("F12");
                    break;

                case "GotoImplementation":
                    if (shortcut.VsShortcut == null)
                        shortcut.VsShortcut = GetShortcutSequence("Control+F12");
                    break;
            }

            if (!shortcut.HasIntellijShortcuts && showSecondarySchemeIfSame)
                shortcut.IntellijShortcut = shortcut.VsShortcut;
        }