Fix table title justification when soft_wrap=True #3949
+44
−6
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 #3948
When
soft_wrap=True, the console setsoverflow='ignore'. The previous fix for #3937 (trailing whitespace) caused thewrap()method to skip justification entirely whenoverflow='ignore', resulting in table titles being left-aligned instead of centered.Root Cause
PR #3937 added this early return:
This bypassed all processing including
new_lines.justify(), causing titles to not be centered.Fix
Restructured the
wrap()method to:new_linesand apply justificationoverflow='ignore'(not justification)Test Plan
Added two tests:
test_wrap_justify_with_overflow_ignoreintest_text.py- verifies text centering works with overflow=ignoretest_title_justify_with_soft_wrapintest_table.py- verifies table title is centered when soft_wrap=TrueBefore/After
Before (title left-aligned):
After (title centered):