Workaround declarativeNetRequest element collapsing bug #452
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.
There's a bug[1] with the declarativeNetRequest API that means that
after blocked iframes are collapsed (hidden) they sometimes can't be
uncollapsed (shown again) after they load successfully. That causes
Click to Load to get messed up for Chrome MV3 builds of the extension,
as the content is sometimes not shown to the user again after it has
been unblocked. The bug is triggered when the collapsed iframe is
removed from the DOM.
As a workaround, let's load a benign data URI in blocked iframes
before removing them from the DOM. That way they are uncollapsed, and
so if they are added back to the page they will be visible to the
user.
1 - https://crbug.com/1428971