Repository: vscode
Issue: Allow to modify hardcoded quick open keybinding shortcuts
Labels: feature-request,quick-pick

Issue Type: <b>Bug</b>

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][1]][1]


FWIW, here are the the relevant parts of my `keybindings.json`, to make it clear which commands I'm referring to:

```javascript
// 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"
  }
]
```

  [1]: https://i.stack.imgur.com/hkDk4.gif

VS Code version: Code - Insiders 1.46.0-insider (2591ede95a52400d5d22989b16706f9b8b4831da, 2020-05-22T21:12:04.233Z)
OS version: Darwin x64 19.4.0

<details>
<summary>System Info</summary>

|Item|Value|
|---|---|
|CPUs|Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (16 x 2300)|
|GPU Status|2d_canvas: enabled<br>flash_3d: enabled<br>flash_stage3d: enabled<br>flash_stage3d_baseline: enabled<br>gpu_compositing: enabled<br>metal: disabled_off<br>multiple_raster_threads: enabled_on<br>oop_rasterization: disabled_off<br>opengl: enabled_on<br>protected_video_decode: unavailable_off<br>rasterization: enabled<br>skia_renderer: disabled_off_ok<br>video_decode: enabled<br>viz_display_compositor: enabled_on<br>webgl: enabled<br>webgl2: enabled|
|Load (avg)|2, 2, 2|
|Memory (System)|32.00GB (2.19GB free)|
|Process Argv||
|Screen Reader|no|
|VM|0%|
</details><details><summary>Extensions (21)</summary>

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


</details>
<!-- generated by issue reporter -->