Repository navigation
Conversation
…d pointer, a smooth glide - A new tab (the + button, Ctrl+T, the menu, --new-tab) opens with the address field focused and the controller keyboard up on it. Confirming the address hands the focus to the page that loads, as in Edge. A tab view takes the window's focus as it is attached, so while the keyboard types into the address the focus goes back to the shell. - The address field follows the tab's address until the user types in it, so a page that loads while the field has the focus shows its address. - The pointer is a white arrow with a black edge, and a pointing hand over links, buttons and anything a page gives cursor: pointer; the tip of either is where the click lands. - The pointer used to jump 15 times a second. The stick now moves it on every poll, scaled by the time since the last one so the speed is the same; the main process draws only the newest position; and the page glides the pointer to it on every frame of the screen (about 140 per second on the test monitor). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
3 tasks done
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 free
to 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.
Stacked on #104 ← #103 ← #101.
Summary
New tab = ready to type.
Navigation.newTabnow callsShell.typeInAddress(), which runsenterChrome()and then opens the keyboard on the address. That covers the + button, Ctrl+T, the menu and--new-tab.focus-page, so the page that loads gets the D-pad, as in Edge.Address field follows the tab until the user types in it. Before, a field that kept the focus stayed blank while the page loaded.
Pointer from the reference: a white arrow with a black edge, which turns into a pointing hand over links, buttons, form controls and anything with
cursor: pointer. The tip of the arrow and of the finger is the click spot.Smooth movement. Measured as distinct positions drawn per second while the stick is held:
requestAnimationFrame: 137/s (on the 144 Hz test monitor)The main process also draws only the newest position (no queue). Clicks always use the newest position, never the drawn one.
Test plan
npm run typechecknpm test(118 passed)npm run test:e2e(61 passed, 3 skipped), with two new tests:🤖 Generated with Claude Code