• Ian Kilpatrick's avatar
    [layout] Abort simplified layout if baselines shift. · 0c0063c3
    Ian Kilpatrick authored
    If we ran simplified layout, or triggered layout from a subtree-root
    the baseline of the fragment may have changed. While most of the time
    this doesn't have any visible side-effect, there may be an arbitrary
    ancestor which relies on this baseline, causing elements to be baseline
    aligned incorrectly.
    
    This patch does two things:
    1) When simplified layout is triggered from simplified layout, check if
       the Baseline shifted, and return nullptr.
    2) When we are being laid out as a subtree root (as an inflow element),
       check if the Baseline shifted, and mark our containing block chain
       for layout.
    
    Bug: 1137905
    Change-Id: I8c8fa2c981e9001cf6ec7f685d4451e1fe13c848
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2509644Reviewed-by: default avatarChristian Biesinger <cbiesinger@chromium.org>
    Reviewed-by: default avatarMorten Stenshorne <mstensho@chromium.org>
    Commit-Queue: Ian Kilpatrick <ikilpatrick@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#823197}
    0c0063c3
disable-layout-ng 54.2 KB