💚 Fix: Prevent multiple progress bars when receiving Competitive Companion messages#151
Merged
Pushpavel merged 1 commit intoPushpavel:mainfrom Nov 30, 2025
Merged
Conversation
|
Codecov Report❌ Patch coverage is
🚀 New features to boost your workflow:
|
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.
Problem
When receiving problems from Competitive Companion browser extension, multiple identical "Gathering problems..." progress bars appear simultaneously (typically 5 or more), causing UI clutter and confusion (even in situation of opening one project).
Root
I think the problem was caused by the old implementation: every time I opened the project, a new ProblemGatheringBridge instance would be created, but the old ones weren't being cleaned up. This led to multiple instances running simultaneously, each showing its own progress bar.
What Changed
I refactored
ProblemGatheringBridgeto be an application-level service instead of a ProjectActivity. Now there's only one instance running across all projects, which means:isRunningflag to prevent duplicate startsCreated a separate
ProblemGatheringBridgeStarterclass that initializesthe service when the first project opens.
Testing
After rebuilding and reinstalling the plugin with this fix, the issue is gone.