Fix TabBar initialization issue and add tests #97255
Merged
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.
Fixed TabContainer emitting multiple signals when being added to the tree if a child was made visible (for the
children visibility before entering tree
test).Adds tests for TabBar and TabContainer.
Includes basic tests for adding and removing tabs, setting current tab, adding tabs when out of tree (important for initialization), and some layout tests.
This should help prevent regressions.
If there is too much, I can separate it into another PR.
TabBar and TabContainer both have a similar system to allow setting the current_tab before adding tabs, it might be possible to combine them in the future.
I had to make a public
set_tab_offset
since there was no other way to set the tab offset other than sending a mouse click to the offset buttons,ensure_tab_visible
doesn't offer enough control. We should consider exposing it in the future.Also added a debug message for if
SIGNAL_CHECK_FALSE
fails, it now says what the actual arguments are, just likeSIGNAL_CHECK
.