Bug 286207

Summary: InlineIterator needs more iteration options
Product: WebKit Reporter: fantasai <fantasai.bugs>
Component: Layout and RenderingAssignee: fantasai <fantasai.bugs>
Status: RESOLVED FIXED    
Severity: Normal CC: bfulgham, simon.fraser, webkit-bug-importer, zalan
Priority: P2 Keywords: InRadar
Version: WebKit Local Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 286725    

fantasai
Reported 2025-01-18 04:52:31 PST
For the InlineIterator classes, we have first/previous/next/last traversal methods, but a) It's not clear what order this is (it's LTR order). b) We need multiple orders, and this only provides one of them. Specifically, we need to be able to iterate inline boxes: 1. In source order, for painting. 2. In LTR/RTL order, for logical movement. 3. In coordinate increasing/decreasing order, for hit testing and other geometrical operations. Note: I believe InlineIteratorLogicalOrderTraversal is supposed to provide (1), though it might need to be used in more places (we don't paint correctly). We might want to rethink what order we use as the backing store, but in any case we need multiple traversal methods and we need to have clear names to distinguish what they each do.
Attachments
Radar WebKit Bug Importer
Comment 1 2025-01-18 04:52:55 PST
EWS
Comment 2 2025-01-20 11:14:01 PST
Committed 289159@main (d0bccb1198a2): <https://commits.webkit.org/289159@main> Reviewed commits have been landed. Closing PR #39128 and removing active labels.
Note You need to log in before you can comment on or make changes to this bug.