fix: add dialog recovery mechanism to prevent grey screen issue #6285
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.
This PR fixes the grey screen issue reported in #6283 where the Roo Code interface becomes unresponsive with a grey overlay.
Problem
The issue occurs when dialog components (HumanRelayDialog, DeleteMessageDialog, or EditMessageDialog) get stuck in an open state without their content rendering properly, leaving only the semi-transparent grey overlay visible.
Solution
Implemented a multi-layered recovery mechanism:
Changes
Testing
Fixes #6283
Important
Introduces a dialog recovery mechanism in
App.tsxto prevent grey screen issues by adding automatic, manual, and error boundary-based solutions.App.tsxto automatically close stuck dialogs (HumanRelayDialog,DeleteMessageDialog,EditMessageDialog).DialogErrorBoundaryinDialogErrorBoundary.tsxto catch and handle errors in dialog content.App.tsxfor manual dialog closure.MemoizedHumanRelayDialog,MemoizedDeleteMessageDialog, andMemoizedEditMessageDialogwithDialogErrorBoundaryinApp.tsx.This description was created by
for c0d462b. You can customize this summary. It will automatically update as commits are pushed.