Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Web player intercepts ⌘⇧M and blocks Chrome profile-menu shortcut

Open Beginner friendly
#2,596 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@AatmanAJ is already working on this.

Since Oct 15, 2026.

  • #2627 by @AatmanAJ — open

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
80/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
frontend

Research direction

Start in apps/web/app/s/[videoId]/_components/video/media-player.tsx, around lines 504-553, where the keydown handler switches on event.key.toLowerCase() and calls preventDefault() for 'm'. Check how modifier keys are handled there, then add an early return for Command, Control and Alt so browser shortcuts pass through, keeping plain M for mute and the Shift-based speed shortcuts working. Done when a keydown with metaKey set is not default-prevented and plain M still toggles mute on a share page. The issue also asks to review other letter shortcuts in the same handler.

Written by the indexing model from the issue text.

Description

Description

Cap's web video player intercepts ⌘⇧M (Command+Shift+M) on macOS, preventing Chrome's open profile menu shortcut from working when the player has focus. The player treats the modified shortcut as its plain M mute/unmute command and cancels the browser's default action.

Reproduction
  1. Open a Cap share page in Google Chrome on macOS, for example https://cap.so/s/mdvxms2gfmkgc0e.
  2. Focus the video player or one of its controls.
  3. Press ⌘⇧M.

Actual: Cap consumes the shortcut and toggles mute instead of allowing Chrome's profile menu to open.

Expected: Browser shortcuts containing Command should pass through. Plain M should continue to toggle mute.

Additional Context
  • Affected component: Cap web share-page player (not the desktop recording app).
  • Browser / OS: Google Chrome on macOS; the original reporter's exact versions were not collected.
  • Live-page diagnostic: With the player focused, dispatching a cancelable keydown with key: "M", metaKey: true, and shiftKey: true changed the video's muted state from false to true and set defaultPrevented: true. This verifies the page handler consumes the modified key event; the diagnostic used a synthetic event, not a native Chrome profile-menu interaction.
  • Likely cause: the player's keyboard handler switches on event.key.toLowerCase() and calls preventDefault() for m without checking Command/Control/Option modifiers. Source: https://github.com/CapSoftware/Cap/blob/34036657845bf063c875e66a10ad537afa415f35/apps/web/app/s/%5BvideoId%5D/_components/video/media-player.tsx#L504-L553.
  • Suggested fix: ignore Command/Control/Alt-modified events before processing plain player shortcuts, while retaining intentional Shift-based shortcuts such as playback-speed controls. Please also check other letter shortcuts for the same browser-shortcut collision.
Dominant language
Rust
Stars
23.2k
Forks
2k
Avg merge
1d 5h
Merged PRs (30d)
130

Getting set up

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.

More from CapSoftware/Cap

All issues in CapSoftware/Cap

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.