Skip to content

Pull request view: choose the repository in a folder of several checkouts - #297

Merged
stippi merged 4 commits into
mainfrom
feature/pr-repo-focus
Nov 2, 2026
Merged

stippi merged 4 commits into
mainfrom
feature/pr-repo-focus

Conversation

@stippi

@stippi stippi commented Nov 2, 2026

Copy link
Copy Markdown
Owner

A project folder can hold several GitHub checkouts without being a repository itself. The pull request view could not be pointed at one of them. Now the list has a repository it focuses on, and you choose it above the list.

Choosing

  • session_checkouts finds the folder's own repository and the checkouts directly below it (hidden directories skipped, one entry per repository).
  • With several and no earlier choice, the search field shows in place of the list and nothing is read from GitHub until one is picked. Afterwards it sits in a popover behind a button in the list's toolbar.
  • The first focus is the repository the session listed last, else the folder's own, else the one last chosen in that folder, else the only one. Recently chosen ones come first in the popover.

Tabs

  • Tabs are keyed by PullRequestRef and stay open when the list moves to another repository. A tab from a repository other than the listed one is labelled with the repository's name.
  • The saved UI state now records the repository; the old format still reads.

Checkout

  • A pull request is checked out in the checkout of its own repository. If there is none, the error says so.
  • Here in a checkout below the folder does not bind the session to it. Worktree gives a new single-repository session in the same project folder.

Testing

  • Tried in the app with real folders of checkouts: the choice in place, a remembered focus and the popover with its search, GitHub Enterprise hosts included.
  • Covered by tests only: tabs labelled by repository, checking out, the search reset on reopening and the list's scrolling. The scrollbar's look has not been seen.
  • tools::impls::browser::computer::tests::a_hung_page_fails_fast failed in one of two full workspace runs and passed three times alone. It measures time against a real browser, and this branch does not touch that code.

There is no list across all repositories at once, on purpose.

@stippi
stippi merged commit 5d35221 into main Nov 2, 2026
5 of 6 checks passed
@stippi
stippi deleted the feature/pr-repo-focus branch November 2, 2026 17:28
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