Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correctly handle blend primitives, where the contents are clipped. #2477

Merged
merged 1 commit into from Feb 28, 2018

Commits on Feb 28, 2018

  1. Correctly handle blend primitives, where the contents are clipped.

    In some situations, the items within a filter stacking context will
    have clips applied. In this case, we minimize the allocated size
    of the intermediate surface, to avoid drawing redundant information
    that won't be seen.
    
    However, if the stacking context itself does not have the same clip
    applied, then we need to ensure that when we draw the blend primitive,
    we don't sample outside the smaller region of the intermediate
    surface that was rendered.
    
    Ideally, the stacking context should have a clip applied to it so
    that we don't waste time drawing transparent pixels. Adding a clip
    to the stacking context here would provide an optimization win in
    many cases. However, even without one present, we should still
    ensure correct rendering, thus this fix is required.
    
    Also fix a case where brush primitives with segments were not setting
    the correct bounding rect for a render task. This wasn't causing a
    problem here, but may have caused other issues.
    gw3583 committed Feb 28, 2018
You can’t perform that action at this time.