| 
        
       | 
      
        
  
  [LayoutNG] Add NGLineBoxFragment
This patch adds NGLineBoxFragment, along with:
- NGPhysicalLineBoxFragment
- NGLineBoxFragmentBuilder
- NGTextFragmentBuilder for consistency
Part of code in NGLineBuilder was extracted to new classes, in
preparation of renaming it to NGLineLayoutAlgorithm.
NGFragment::Overflow was moved to NGBoxFragment, since neither text nor
linebox has layout overflow. All types of fragments have ink overflow,
but this is not included in this CL.
Some of NGFragmentBuilders could be shared as super classes. This is not
in this CL but to be discussed further.
This patch moves one step towards computing baseline position from
NGFragment, but its implementation is not included in this CL.
BUG= 636993
Review-Url:  https://codereview.chromium.org/2764753007
Cr-Commit-Position: refs/heads/master@{#459446}
Committed:  https://chromium.googlesource.com/chromium/src/+/9872e64c2d620fe4c01d7fd1e3776954b162fc9b
   
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
    
      Total comments: 1
      
     
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
    
  
  
    
       | 
      Unified diffs | 
      Side-by-side diffs | 
      Delta from patch set | 
      Stats (+560 lines, -246 lines) | 
      Patch | 
     
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/BUILD.gn
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
         | 
        
          3 chunks | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_box_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +4 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_box_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +12 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +0 lines, -4 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +0 lines, -12 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_fragment_builder.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +0 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_fragment_builder.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +0 lines, -15 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_inline_node_test.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          2 chunks | 
          +7 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A + | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_box_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +11 lines, -15 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_box_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +7 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_box_fragment_builder.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +57 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_box_fragment_builder.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +70 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_builder.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
         | 
        
          3 chunks | 
          +6 lines, -44 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_builder.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
         | 
        
          9 chunks | 
          +75 lines, -124 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_height_metrics.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +46 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_line_height_metrics.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +46 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          2 chunks | 
          +5 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_box_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +1 line, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          3 chunks | 
          +9 lines, -8 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +15 lines, -6 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_line_box_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +43 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_line_box_fragment.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +24 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_physical_text_fragment.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
         | 
        
          1 chunk | 
          +2 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_text_fragment_builder.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +49 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_text_fragment_builder.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
         | 
        
          1 chunk | 
          +48 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            third_party/WebKit/Source/core/layout/ng/ng_text_layout_algorithm_test.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
         | 
        
          2 chunks | 
          +13 lines, -8 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
   
  
  
    
      Dependent Patchsets:
      
         
      
    
  
 
  
   
  
    
  
  
  
    
    Total messages: 38 (21 generated)
     
  
  
       |