LibWeb: Use FfiDisplay directly for table roles - #10946
Merged
kalenikaliaksandr merged 2 commits intoJul 31, 2026
Merged
Conversation
Rust layout classified displays into table-specific enum before checking their roles. This duplicated predicates already available on FfiDisplay and forced every consumer through an unnecessary conversion layer. Remove FfiTableDisplay and table_display_of. Tree construction and formatting context selection, node facts, and table grid construction now query FfiDisplay directly. Spec-level grouping helpers remain only where they express table concepts instead of mirroring display roles.
Replacing a layout node transferred saved absolute-positioning inputs by calling from Rust into C++ and back through an exported arena function. TreeBuilder already has the arena and both slot IDs at that point. Copy the inputs directly in the replacement branch and remove the C ABI entry point and arena helper. Remove the dedicated unit test that only exercised this transfer, along with all of its test-only imports.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (8)
💤 Files with no reviewable changes (3)
📝 WalkthroughWalkthroughThe layout system now classifies table roles directly from ChangesLayout classification and replacement
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Rust layout classified displays into table-specific enum before checking
their roles. This duplicated predicates already available on FfiDisplay
and forced every consumer through an unnecessary conversion layer.
Remove FfiTableDisplay and table_display_of. Tree construction and
formatting context selection, node facts, and table grid construction
now query FfiDisplay directly. Spec-level grouping helpers remain only
where they express table concepts instead of mirroring display roles.