From f80fcaa6b15f547d30ed5fa3e4e2facf97ca8167 Mon Sep 17 00:00:00 2001 From: Jack Della Date: Mon, 30 Mar 2026 14:53:21 +1000 Subject: [PATCH 1/2] FIX: indefinite fetch spinner. --- app/src/lib/stores/app-store.ts | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/app/src/lib/stores/app-store.ts b/app/src/lib/stores/app-store.ts index 464440e8456..4a23f811b86 100644 --- a/app/src/lib/stores/app-store.ts +++ b/app/src/lib/stores/app-store.ts @@ -1071,10 +1071,12 @@ export class AppStore extends TypedBaseStore { } protected emitUpdate() { - // If the window is hidden then we won't get an animation frame, but there - // may still be work we wanna do in response to the state change. So - // immediately emit the update. - if (this.windowState === 'hidden') { + // If the window is hidden or not focused then we won't reliably get + // animation frames (especially on Windows where Chromium throttles + // requestAnimationFrame for unfocused windows), but there may still be + // work we wanna do in response to the state change. So immediately emit + // the update. + if (this.windowState === 'hidden' || !this.appIsFocused) { this.emitUpdateNow() return } @@ -4911,9 +4913,8 @@ export class AppStore extends TypedBaseStore { repository, account ) - const refreshedRepo = await this.repositoryWithRefreshedGitHubRepository( - repo - ) + const refreshedRepo = + await this.repositoryWithRefreshedGitHubRepository(repo) await this._refreshRepository(refreshedRepo) } @@ -5566,9 +5567,8 @@ export class AppStore extends TypedBaseStore { private async fastForwardBranches(repository: Repository) { try { - const eligibleBranches = await getBranchesDifferingFromUpstream( - repository - ) + const eligibleBranches = + await getBranchesDifferingFromUpstream(repository) await fastForwardBranches(repository, eligibleBranches) } catch (e) { @@ -7296,9 +7296,8 @@ export class AppStore extends TypedBaseStore { // association is out of date. So try again before we bail on providing an // authenticating user. if (!account) { - updatedRepository = await this.repositoryWithRefreshedGitHubRepository( - repository - ) + updatedRepository = + await this.repositoryWithRefreshedGitHubRepository(repository) } return fn(updatedRepository) From 671e6e781d789ba61521dbf186f3556d689da869 Mon Sep 17 00:00:00 2001 From: Pol Rivero <65060696+pol-rivero@users.noreply.github.com> Date: Mon, 30 Mar 2026 07:42:14 +0200 Subject: [PATCH 2/2] Run Prettier --- app/src/lib/stores/app-store.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/app/src/lib/stores/app-store.ts b/app/src/lib/stores/app-store.ts index 4a23f811b86..638ffcccdd9 100644 --- a/app/src/lib/stores/app-store.ts +++ b/app/src/lib/stores/app-store.ts @@ -4913,8 +4913,9 @@ export class AppStore extends TypedBaseStore { repository, account ) - const refreshedRepo = - await this.repositoryWithRefreshedGitHubRepository(repo) + const refreshedRepo = await this.repositoryWithRefreshedGitHubRepository( + repo + ) await this._refreshRepository(refreshedRepo) } @@ -5567,8 +5568,9 @@ export class AppStore extends TypedBaseStore { private async fastForwardBranches(repository: Repository) { try { - const eligibleBranches = - await getBranchesDifferingFromUpstream(repository) + const eligibleBranches = await getBranchesDifferingFromUpstream( + repository + ) await fastForwardBranches(repository, eligibleBranches) } catch (e) { @@ -7296,8 +7298,9 @@ export class AppStore extends TypedBaseStore { // association is out of date. So try again before we bail on providing an // authenticating user. if (!account) { - updatedRepository = - await this.repositoryWithRefreshedGitHubRepository(repository) + updatedRepository = await this.repositoryWithRefreshedGitHubRepository( + repository + ) } return fn(updatedRepository)