You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR fixes an issue where setting ProxyViewContainer.hidden = true did not hide its child views.
Problem
ProxyViewContainer is a virtual container that does not create a native view.
As a result, toggling its hidden property had no visible effect — its child views remained visible.
Solution
Override the hidden property to propagate the hidden state to all child views:
public set hidden(value: boolean) {
super.hidden = value;
this.eachChildView((child) => {
child.hidden = value;
return true;
});
}
An automatically generated fix could have helped fix failing tasks for this run, but Self-healing CI is disabled for this workspace. Visit workspace settings to enable it and get automatic fixes in future runs.
To disable these notifications, a workspace admin can disable them in workspace settings.
What made you use this property? I don't recall any hidden property in the View API.
These changes are wrong as we use visibility to perform such an action.
We have hidden as well. The changes look accurate, had to adjust few things but it just ensures when using it on proxy that it’s children we marked hidden since proxy is not a native view itself.
We have hidden as well. The changes look accurate, had to adjust few things but it just ensures when using it on proxy that it’s children we marked hidden since proxy is not a native view itself.
That's my bad, thanks for the correction @NathanWalker!
This isn't as hackish as current solution and doesn't need ignore comments.
One thing I don't know is if these events are emitted in ProxyViewContainer just like the rest of views.
✅ Rebased and resolved merge conflict.
The ProxyViewContainer.hidden logic now properly hides all child views without using @ts-ignore.
Tested and ready for review. Thanks @NathanWalker 🙌
Hi @NathanWalker 👋
The PR has been rebased, tested, and all checks are passing.
Could you please approve the pending workflows and merge when convenient? 🙏
Hi @NathanWalker 👋
The PR is approved and cleanly merged with main.
The failing Android/iOS tests seem to be CI environment issues (core:build exited with code 130).
Could you please re-run or merge when convenient? 🙏
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
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 an issue where setting ProxyViewContainer.hidden = true did not hide its child views.
Problem
ProxyViewContainer is a virtual container that does not create a native view.
As a result, toggling its hidden property had no visible effect — its child views remained visible.
Solution
Override the hidden property to propagate the hidden state to all child views:
public set hidden(value: boolean) {
super.hidden = value;
this.eachChildView((child) => {
child.hidden = value;
return true;
});
}