Uh oh!
There was an error while loading. Please reload this page.
fix(chromium-headful): refocus live view on mouse down - #337
Merged
Conversation
3 tasks
rgarcia
approved these changes
Aug 18, 2026
Uh oh!
There was an error while loading. Please reload this page.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
summary
why
The overlay prevents the browser's default mouse-down behavior. If focus moves elsewhere while the pointer remains over the video,
mouseenterdoes not fire again and clicking the video cannot restore focus. Subsequent keyboard events are delivered to the previously focused control instead of the remote browser.validation
textarea.overlayand the remote field receivedabcmousedown,mouseup, andclickdelivery still worksAbc1\nbun run lint(0 errors; existing warnings)bun run build(passes; existing lint and bundle-size warnings)The client does not currently have an automated component test suite for this interaction.
Note
Low Risk
Single guarded focus call in the existing mouse-down path; no auth, data, or protocol changes.
Overview
Fixes a case where keyboard input stopped reaching the remote browser after focus moved to another control on the page while the pointer stayed over the live view.
On desktop mouse down (when hosting and not locked), the client now calls
focus()on the overlay textarea so Guacamole keyboard capture is restored without relying on anothermouseenter. Existing guards are unchanged: non-hosts still getcontrol-attempt, locked sessions still bail out, and touch devices are skipped so mousedown does not pop the mobile keyboard.Reviewed by Cursor Bugbot for commit a92bdc9. Bugbot is set up for automated code reviews on this repo. Configure here.