Skip to content

Allow to modify hardcoded quick open keybinding shortcuts #98479

@stuarteberg

Description

@stuarteberg

Issue Type: Bug

When I step through the the VSCode Quick Open menu, I want it not to automatically switch between editors until I've selected the file I'm interested in (and hit enter). But with a recent (April?) change to VSCode, it automatically shows me each file as I step through the menu. Furthermore, it doesn't show the currently selected file. Instead, it shows each file as it becomes UNselected.


Here's my motivation, for those who are interested:

One of the (common?) ways to use VSCode's "Quick Open" menu is to use it like the "last channel" button on a TV remote. I want to open one editor, then open another, and then quickly toggle back and forth between the two. Since they are my current and most-recent editors, they should appear at the top of the Quick Open Menu, so toggling between them is fast.

This used to work just fine, but a recent (April?) change to the Quick Open menu seems to have broken this functionality. Now, it automatically activates the editor for every file that I step through in the menu, changing my "most recent" ordering. It can no longer be used like a "last channel" button.

Here's a short video demonstrating the problem. Here, I'm starting with one.txt. I want to select five.txt via the Quick Open menu, and then quickly toggle between the two. But it opens all the other files along the way! Instead of toggling between one.txt and five.txt, it toggles between four.txt and five.txt.

(In fact, if you watch closely, the behavior is even weirder: It doesn't show me the currently selected file -- it opens the editor for each file as it becomes UN-selected. Maybe this is just a bug?)

quick menu behavior animation

FWIW, here are the the relevant parts of my keybindings.json, to make it clear which commands I'm referring to:

// keybindings.json
[
  // Trigger quick open menu and pre-select the previously used editor.
  // (With either cmd+left/cmd+right)
  {
    "key": "cmd+left",
    "command": "workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
    "when": "!inEditorsPicker"
  },
  {
    "key": "cmd+right",
    "command": "workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
    "when": "!inEditorsPicker"
  },

  // Once the menu is open, scan through the choices.
  // (Forward with cmd+right, backward with cmd+left)
  {
    "key": "cmd+left",
    "command": "workbench.action.quickOpenNavigatePreviousInEditorPicker",
    "when": "inEditorsPicker && inQuickOpen"
  },
  {
    "key": "cmd+right",
    "command": "workbench.action.quickOpenNavigateNextInEditorPicker",
    "when": "inEditorsPicker && inQuickOpen"
  }
]

VS Code version: Code - Insiders 1.46.0-insider (2591ede, 2020-05-22T21:12:04.233Z)
OS version: Darwin x64 19.4.0

System Info
Item Value
CPUs Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (16 x 2300)
GPU Status 2d_canvas: enabled
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
metal: disabled_off
multiple_raster_threads: enabled_on
oop_rasterization: disabled_off
opengl: enabled_on
protected_video_decode: unavailable_off
rasterization: enabled
skia_renderer: disabled_off_ok
video_decode: enabled
viz_display_compositor: enabled_on
webgl: enabled
webgl2: enabled
Load (avg) 2, 2, 2
Memory (System) 32.00GB (2.19GB free)
Process Argv
Screen Reader no
VM 0%
Extensions (21)
Extension Author (truncated) Version
vscode-bazel Baz 0.3.0
kill-ring dvk 0.2.3
json-tools eri 1.0.2
workspacesort ici 1.5.9
error-gutters Igo 1.0.1
restructuredtext lex 128.0.0
autoconf mae 0.1.0
vscode-docker ms- 1.2.0
python ms- 2020.5.80290
remote-containers ms- 0.117.1
remote-ssh ms- 0.51.0
remote-ssh-edit ms- 0.51.0
remote-wsl ms- 0.44.2
vscode-remote-extensionpack ms- 0.20.0
cmake-tools ms- 1.4.0
cpptools ms- 0.28.1
vscode-json-editor nic 0.2.3
vscode-singularity onn 0.5.0
trailing-spaces sha 0.3.1
gitblame wad 4.0.1
vscode-proto3 zxh 0.4.2

Metadata

Metadata

Labels

feature-requestRequest for new features or functionalityinsiders-releasedPatch has been released in VS Code Insiderson-release-notesIssue/pull request mentioned in release notesquick-pickQuick-pick widget issuesverification-neededVerification of issue is requestedverifiedVerification succeeded

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions