obsproject / obsproject/obs-browser

Arrow keys register twice in browser source interact window

Open
#361 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Confirmed platform/macos
Dominant language
C++
Stars
904
Forks
267
Avg merge
1d 23h
Merged PRs (30d)
2

Description

Operating System Info

macOS 12.0

Other OS

No response

OBS Studio Version

27.2.4

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/N-lR1rzq9O25veQ9

OBS Studio Crash Log URL

No response

Expected Behavior

The arrow keys in a browser interact window should only register once when pressed, unless held.

Current Behavior

The arrow keys register twice when pressed once. For instance, when the left arrow key is pressed once in a text field, the insertion point moves two spaces to the left.

Steps to Reproduce
  1. Add Browser Source
  2. Link source to any site with a text field (Google, DuckDuckGo, etc)
  3. "Interact" with source
  4. Type in text field
  5. Move insertion point with arrow keys to demonstrate problem
    ...
Anything else we should know?

I've noticed that OBS only behaves this way on MacOS (both x86 and Apple Silicon through Rosetta). Linux Mint did not have the same issue and testing over the phone with a Windows user did not produce the same problem.

For me, this causes problems for HTML slideshow presentations. The slide moves two forward or back instead of one!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue through OBS Studio's Browser Source and Interact window on macOS, using a text field and a slideshow if available. Trace the macOS keyboard-event path used by the browser interaction entry point and compare it with Linux or Windows behavior. Done means one arrow press moves the caret or slide once, while holding the key continues to repeat normally.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.