ROX-33443: Fix interactive legend click in Victory v37#19278
Draft
sachaudh wants to merge 4 commits intodv/ROX-28622-pf-6from
Draft
ROX-33443: Fix interactive legend click in Victory v37#19278sachaudh wants to merge 4 commits intodv/ROX-28622-pf-6from
sachaudh wants to merge 4 commits intodv/ROX-28622-pf-6from
Conversation
|
Skipping CI for Draft Pull Request. |
Contributor
|
Images are ready for the commit at c515037. To use with deploy scripts, first |
Victory v37 (PF charts v8) broke getInteractiveLegendEvents -- the onLegendClick callback passed through Chart's events prop is never invoked. Work around this by attaching click events directly to the ChartLegend component instead. Also fixes chartNames ordering to match legend item indices and adds name props to ChartBar for correct hover muting behavior. Partially generated by AI. Signed-off-by: Saif Chaudhry <schaudhr@redhat.com>
Update comment on the ChartLegend click workaround to reference the upstream PatternFly issue (patternfly-react#12263) and describe the precise trigger: ChartBar + ChartStack/ChartGroup + ChartAxis. Partially generated by AI. Signed-off-by: Saif Chaudhry <schaudhr@redhat.com>
d5c4b8b to
b54c022
Compare
The legend click workaround applied in the previous commit restores severity toggling, so the skipped component test can be re-enabled. Signed-off-by: Saif Chaudhry <schaudhr@redhat.com>
Explain that PF declares chartNames as a single-element tuple but iterates it as a plain array at runtime, making the cast unavoidable. Signed-off-by: Saif Chaudhry <schaudhr@redhat.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dv/ROX-28622-pf-6 #19278 +/- ##
====================================================
Coverage ? 49.55%
====================================================
Files ? 2675
Lines ? 201838
Branches ? 0
====================================================
Hits ? 100015
Misses ? 94361
Partials ? 7462
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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.
Description
Jira: ROX-33443
getInteractiveLegendEvents'onLegendClickcallback is never invoked whenChartBaris wrapped inChartStack/ChartGroupalongsideChartAxis. This is an upstream PatternFly/Victory v37 bug: patternfly-react#12263.Changes
ChartLegendvia itseventsprop, bypassing the brokenChart-level event propagationchartNamesordering to match legend item indices (was usingObject.values()which followed object declaration order instead of the array order used by the legend)nameprop toChartBarcomponents so the interactive legend can target chart children for hover effectsRoot cause
Reproduced and narrowed down in sachaudh/pf-legend-click-repro:
User-facing documentation
Testing and quality
Automated testing
How I validated my change
Screenshots
Screen.Recording.2026-03-05.at.11.24.47.AM.mov