• timloh@chromium.org's avatar
    Fix usage of pseudo style cache · a434069c
    timloh@chromium.org authored
    This patch fixes our usage of the pseudo style cache so that we will
    use a cached pseudo style when creating pseudo-elements if possible
    and so that we cache pseudo styles even if they don't get a renderer.
    We also move the logic for having styles with animations or transitions
    be non-sharable from RenderStyle::isSharable to the StyleAdjuster, so
    that animated pseudo-elements will have their parent's style correctly
    marked as non-sharable.
    
    As a result, a pseudo-element without a renderer (e.g. display:none
    or content:none) to will correctly return its computed style to
    getComputedStyle. This also fixes a regression where the pseudo style
    cache can end up very large when its parent style is shared.
    
    BUG=345653
    
    Review URL: https://codereview.chromium.org/196143004
    
    git-svn-id: svn://svn.chromium.org/blink/trunk@169619 bbb929c8-8fbe-4397-9dbb-9b2b20218538
    a434069c
getComputedStyle-with-pseudo-element-without-renderer.html 528 Bytes