Repository navigation
Rating question layout and focus, Space on buttons, one unasked prompt at a time - #1936
Merged
Merged
Conversation
It kept the right rail's width free as padding from a viewport media query that knew nothing of the detail or accounts panel, so with a session selected at 1024px the row was 40px wide and 492px tall, and with the accounts panel open too the page scrolled sideways and the machine panel covered every number. The row now spans the window, the side panels and the rail start under it by the height it reports, and on a phone it is two lines.
A number pressed from the keyboard now hands focus to the thanks, Not now and the × hand it to the canvas, and the thanks no longer goes by itself while focus is in it or while the feedback dialog it offered is open, so that dialog can give focus back. The thanks is said through a live region that is always mounted, rather than by the row turning into one with its words.
React Flow listens for its pan key, Space by default, on the whole document and cancels the keydown wherever focus is unless it is a text field, so Space pressed none of the topbar toggles, the ⋯ menu, the rating numbers or a dialog's Cancel. The board takes no pan key now; dragging and scrolling already pan it.
The question's look checked only App's own dialogs, so it turned up behind the CPU and load history, Busiest processes, the network map, a sign-in or a pairing request, under a scrim where none of it could be pressed. It now asks the dialog stack as the canvas's keys do, and the thanks waits on the same test.
… at a time Both waited for an open dialog by counting the stack, which a dialog joins only after the render that draws it, so when that dialog closed they came up together, the re-sign-in prompt over the pairing request it should follow. The two are now decided in one render, the pairing request first, and one going up counts against the prompt behind it.
Closed
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.
What changes
--rating-h. On a phone the row is two lines: the question with "Not now", then the scale. With a coarse pointer the numbers share that line, between 24px and 32px each. The low-score thanks takes the same shape.UnaskedPrompts), pairing request first.Verification
npm run typecheck: clean.--maxWorkers=3 --minWorkers=1): 885 files and 11,573 tests passed, before the rebase. After rebasing onto development, the 33 touched and nearby files (639 tests) pass.rating-banner-room.test.tsfailed on thepadding-right: calc(288px + 18px)rule, the missing full-width placement and the missing--rating-h.rating-banner-focus.test.ts: focus was onbodyafter a keyboard pick, after "Not now" and after the ×. The thanks was gone while focus was in it, the offer calledcloseRatingand there was no live region. Its mouse case passes both before and after, as a guard.space-presses-buttons.test.ts: React Flow was given nopanActivationKeyCode, so it used its default, Space.rating-waits-for-dialogs.test.ts: the question showed with a stack dialog open.unasked-prompts-one-at-a-time.test.ts: both prompts were drawn at once,[pairing request, re-sign-in].lan-pair-request-waits.test.tsnow targetsusePairRequestDialog, and thepromptShowspin inreauth-prompt-1893.test.tsnow reads the pairing count.Every panel combination: accounts, usage, machine and detail each on and off, at 1440, 1280, 1024, 768, 390 and 360, in both themes. That is 192 layouts, each measuring canvas top,
scrollWidthandelementFromPointon all 12 banner buttons.For example, 1024 with accounts, usage, machine and detail open went from canvas top 544,
scrollWidth1272/1024 and 12/12 buttons covered byaside.sysdetailto canvas top 93, 1024/1024 and 0/12. The rail follows the row through question, thanks and dismissal. At 390 the usage panel top moves 131 → 131 → 60.Focus:
main#canvas. "Not now" →main#canvas.Space: Space presses a rating number (the keydown is no longer cancelled), the usage toggle, Send feedback, the dialog's close and the ⋯ at 390. Space on the canvas still toggles pause.
Gate: with the CPU history chart open at the first look, there is no banner. At the next look after it closes, the banner shows with no buttons covered.
Prompts: with
/api/lanand/api/claude-accountsfaked, closing Feedback shows only "A deck wants to pair". One Escape, then the re-sign-in prompt.