Skip to content

Change keyboard hotkeys from arrow keys to WASD#271

Closed
Nitrino wants to merge 13 commits into
masterfrom
change-keyboard-hotkeys-to-wasd
Closed

Change keyboard hotkeys from arrow keys to WASD#271
Nitrino wants to merge 13 commits into
masterfrom
change-keyboard-hotkeys-to-wasd

Conversation

@Nitrino

@Nitrino Nitrino commented Jan 11, 2026

Copy link
Copy Markdown
Owner

Summary

  • Replace arrow key navigation with WASD keys for subtitle control
  • A: previous subtitle (was ArrowLeft)
  • D: next subtitle (was ArrowRight)
  • S: replay current subtitle (was ArrowDown)

Test plan

  • Build the extension with pnpm build
  • Load extension in browser and test on a streaming service
  • Verify A key moves to previous subtitle
  • Verify D key moves to next subtitle
  • Verify S key replays current subtitle
  • Verify Alt+A and Alt+D work for force navigation

* "Claude PR Assistant workflow"

* "Claude Code Review workflow"
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 301603f to f6b6d51 Compare January 11, 2026 20:09
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from f6b6d51 to 8552aea Compare January 11, 2026 20:18
Repository owner deleted a comment from claude Bot Jan 11, 2026
Modify the workflow prompt to instruct Claude Code to post each code-related issue as a separate GitHub PR review comment instead of grouping all feedback into a single message. This makes reviews more actionable and allows developers to address issues individually.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Repository owner deleted a comment from claude Bot Jan 11, 2026
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 8552aea to d708c47 Compare January 11, 2026 20:34
Ensure Claude Code always runs PR preview step for every pull request, regardless of size, complexity, or any other criteria. This prevents any automatic skipping of the preview process.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from d708c47 to 37b123a Compare January 11, 2026 20:38
Update the Claude Code review workflow prompt to explicitly instruct the use of gh api for creating inline review comments on specific code lines, rather than general PR comments. This provides developers with actionable feedback directly on the relevant code.

Changes:
- Add detailed gh api command syntax for inline comments
- Specify requirements: full SHA, exact line numbers, side parameter
- Clarify difference between gh api (inline) and gh pr comment (general)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 78942f2 to dfc22df Compare January 11, 2026 20:55
Repository owner deleted a comment from claude Bot Jan 11, 2026
Repository owner deleted a comment from claude Bot Jan 11, 2026
Change 'PR preview' to 'PR review' throughout the critical rule for consistency and accuracy with the actual workflow behavior.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from dfc22df to ca29246 Compare January 11, 2026 21:01
Revert to simpler instructions for posting individual review comments, removing the detailed gh api command syntax. The simpler prompt is more flexible and lets Claude Code determine the best approach.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from ca29246 to 3d07b14 Compare January 11, 2026 21:14
Repository owner deleted a comment from claude Bot Jan 11, 2026
Repository owner deleted a comment from claude Bot Jan 11, 2026
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 3d07b14 to 8dfa217 Compare January 11, 2026 22:13
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 8dfa217 to 9ca1a5e Compare January 11, 2026 22:19
- Update workflow to use local plugin marketplace instead of remote
- Expand CLAUDE.md with path aliases, keyboard shortcuts, and more
  detailed architecture documentation

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 9ca1a5e to 489a98c Compare January 11, 2026 22:21
Switch from local plugin marketplace to the official claude-code
repository. Remove unused local settings file.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 489a98c to e7a73a2 Compare January 11, 2026 22:29
Repository owner deleted a comment from claude Bot Jan 11, 2026
@claude

claude Bot commented Jan 11, 2026

Copy link
Copy Markdown

Code Review - Issues Found

I found 2 critical bugs in this PR that will break the "next subtitle" functionality:

Issue 1: Typo in key code (line 13)

File: src/utils/keyboardHandler.ts, line 13
Problem: event.code === "KeyDdddd" should be "KeyD"
Impact: The D key will never be detected because "KeyDdddd" is not a valid KeyboardEvent code.
Fix: Change to "KeyD"

Reference:

}
if (event.code === "KeyDdddd") {
event.stopPropagation();
if (event.type === "keydowndddd") {
moveKeyPressed({ direction: "next", force: event.altKey });
}

Issue 2: Typo in event type (line 15)

File: src/utils/keyboardHandler.ts, line 15
Problem: event.type === "keydowndddd" should be "keydown"
Impact: Even if the key code were fixed, the action will never trigger because "keydowndddd" is not a valid event type.
Fix: Change to "keydown"

Reference:

}
if (event.code === "KeyDdddd") {
event.stopPropagation();
if (event.type === "keydowndddd") {
moveKeyPressed({ direction: "next", force: event.altKey });
}

Both typos must be fixed for the D key (next subtitle) hotkey to work.

@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from 8461e15 to 54d4b26 Compare January 13, 2026 16:30
Nitrino and others added 3 commits January 13, 2026 17:33
Copy the code-review plugin from claude-code repository to use locally
instead of fetching from remote marketplace. This gives more control
over the plugin version and allows customization.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- ArrowLeft → KeyA (previous subtitle)
- ArrowRight → KeyD (next subtitle)
- ArrowDown → KeyS (replay current subtitle)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@Nitrino Nitrino force-pushed the change-keyboard-hotkeys-to-wasd branch from f701d47 to d87f18f Compare January 13, 2026 16:34
@claude

claude Bot commented Jan 13, 2026

Copy link
Copy Markdown

Code Review

Found 2 critical bugs in the keyboard handler implementation that prevent the D key from working:

Issue 1: Invalid keyboard event code (line 13)

Bug: event.code === "KeyDdddd" should be event.code === "KeyD"

Location: src/utils/keyboardHandler.ts:13

Impact: The D key (next subtitle) functionality will be completely broken. Pressing D will never match "KeyDdddd" - the correct keyboard event code is "KeyD".

CLAUDE.md Reference: Violates CLAUDE.md lines 66-70 which documents D - Next subtitle.

Suggested fix:

  if (event.code === "KeyD") {

Issue 2: Invalid event type (line 15)

Bug: event.type === "keydowndddd" should be event.type === "keydown"

Location: src/utils/keyboardHandler.ts:15

Impact: Even if the key code were correct, this condition will never be true. Valid keyboard event types are only "keydown", "keyup", or "keypress" - never "keydowndddd".

CLAUDE.md Reference: Violates CLAUDE.md lines 66-70 which documents D - Next subtitle.

Suggested fix:

    if (event.type === "keydown") {

Summary: Both bugs appear to be typos where extra characters (dddd) were accidentally added. The D key handler is completely non-functional and must be fixed before merging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant