Microsoft/vscode

Some cursor movement events are ignored in webview

Open

#244,924 opened on Mar 27, 2025

View on GitHub
 (0 comments) (7 reactions) (1 assignee)TypeScript (10,221 forks)batch import
bughelp wantedwebview

Repository metrics

Stars
 (74,848 stars)
PR merge metrics
 (Avg merge 11h 43m) (1,000 merged PRs in 30d)

Description

In VSCode webview extensions, keydown events are captured and preventDefault is called on them if they look like default keybindings that VSCode handles instead.

However, the logic to filter those events is a bit too simplistic. Specifically, on MacOS, ctrl+f is bound to "cursor right" and ctrl+p is bound to "cursor up" when in a text input, so isPrint and isFindEvent are incorrectly triggering when a text input is focused.

Does this issue occur when all extensions are disabled?: No (but the issue is with webviews in general)

  • VS Code Version: 1.98.2
  • OS Version: MacOS 15.3 (24D60)

Steps to Reproduce:

  1. Take any simple webview extension, such as this one, and add a <textarea> element
  2. Type something. Notice that ctrl+b moves the cursor to the left, but ctrl+f does not move the cursor to the right

Contributor guide