Skip to content

Reset inner group suppression when outer group changes#26

Merged
billdenney merged 1 commit intomainfrom
fix/inner-group-suppression-reset
Apr 28, 2026
Merged

Reset inner group suppression when outer group changes#26
billdenney merged 1 commit intomainfrom
fix/inner-group-suppression-reset

Conversation

@billdenney
Copy link
Copy Markdown
Member

@billdenney billdenney commented Apr 28, 2026

Fixes #25. When suppress_repeated_groups is TRUE, inner grouping columns were checked against only their own last-seen value with no awareness of outer column changes. For example, with A = c(1,1,2,2) and B = c(3,4,4,4) grouped on A then B, column B would show blank in row 3 even though outer group A had changed.

Extracts a new .compute_cell_suppression() helper that precomputes a logical suppression matrix for all group columns. When an outer group column changes, the helper resets inner columns' tracking so their values are re-shown. Replaces the per-column last_grp_val tracking in drawDetails.tfl_table_grob() with a lookup into this matrix.

Adds a targeted test for .compute_cell_suppression() that fails before this fix.

Fixes issue 25. When suppress_repeated_groups is TRUE, inner grouping
columns were checked against only their own last-seen value with no
awareness of outer column changes. For example, with A = c(1,1,2,2) and
B = c(3,4,4,4) grouped on A then B, column B would show blank in row 3
even though outer group A had changed.

Extracts a new .compute_cell_suppression() helper that precomputes a
logical suppression matrix for all group columns. When an outer group
column changes, the helper resets inner columns' tracking so their values
are re-shown. Replaces the per-column last_grp_val tracking in
drawDetails.tfl_table_grob() with a lookup into this matrix.

Adds a targeted test for .compute_cell_suppression() that fails before
this fix.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@billdenney billdenney merged commit fea8f48 into main Apr 28, 2026
9 checks passed
@billdenney billdenney deleted the fix/inner-group-suppression-reset branch April 28, 2026 21:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Repeat inner grouping

1 participant