Fix invalid inherited color scheme fallback - #20491
Open
RohithPariki wants to merge 1 commit into
Open
Conversation
|
Azure Pipelines: There may be pipelines that require an authorized user to comment /azp run to run. |
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.
Summary
Fixes the fallback behavior when an invalid color scheme name is inherited from a fragment parent.
References
Fixes #20462
Detailed Description
When
_validateAllSchemesExist()encounters an invalid color scheme reference, it clears locally defined values so the appearance falls back to the default color scheme.However,
ClearDarkColorSchemeName()andClearLightColorSchemeName()only clear values stored on the leafAppearanceConfig. If the invalid color scheme is inherited from a fragment parent, clearing the leaf is a no-op because the leaf does not own the value, allowing the invalid inherited value to continue resolving.This change preserves the existing behavior for locally defined values while handling inherited values separately. If the invalid color scheme is inherited, the leaf profile is assigned the default color scheme so the invalid inherited value no longer resolves during validation.
This change only affects the fallback behavior described in #20462 and does not modify warning classification.
Validation
SettingsLoader.Checklist