| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #include "SkScanPriv.h" | 10 #include "SkScanPriv.h" |
| (...skipping 685 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 696 // now use the (possibly wrapped) blitter | 696 // now use the (possibly wrapped) blitter |
| 697 blitter = clipper.getBlitter(); | 697 blitter = clipper.getBlitter(); |
| 698 | 698 |
| 699 if (isInverse) { | 699 if (isInverse) { |
| 700 sk_blit_above(blitter, ir, *clipRgn); | 700 sk_blit_above(blitter, ir, *clipRgn); |
| 701 } | 701 } |
| 702 | 702 |
| 703 SkIRect superRect, *superClipRect = nullptr; | 703 SkIRect superRect, *superClipRect = nullptr; |
| 704 | 704 |
| 705 if (clipRect) { | 705 if (clipRect) { |
| 706 superRect.set( clipRect->fLeft << SHIFT, clipRect->fTop << SHIFT, | 706 superRect.set(SkLeftShift(clipRect->fLeft, SHIFT), |
| 707 clipRect->fRight << SHIFT, clipRect->fBottom << SHIFT); | 707 SkLeftShift(clipRect->fTop, SHIFT), |
| 708 SkLeftShift(clipRect->fRight, SHIFT), |
| 709 SkLeftShift(clipRect->fBottom, SHIFT)); |
| 708 superClipRect = &superRect; | 710 superClipRect = &superRect; |
| 709 } | 711 } |
| 710 | 712 |
| 711 SkASSERT(SkIntToScalar(ir.fTop) <= path.getBounds().fTop); | 713 SkASSERT(SkIntToScalar(ir.fTop) <= path.getBounds().fTop); |
| 712 | 714 |
| 713 // MaskSuperBlitter can't handle drawing outside of ir, so we can't use it | 715 // MaskSuperBlitter can't handle drawing outside of ir, so we can't use it |
| 714 // if we're an inverse filltype | 716 // if we're an inverse filltype |
| 715 if (!isInverse && MaskSuperBlitter::CanHandleRect(ir) && !forceRLE) { | 717 if (!isInverse && MaskSuperBlitter::CanHandleRect(ir) && !forceRLE) { |
| 716 MaskSuperBlitter superBlit(blitter, ir, *clipRgn, isInverse); | 718 MaskSuperBlitter superBlit(blitter, ir, *clipRgn, isInverse); |
| 717 SkASSERT(SkIntToScalar(ir.fTop) <= path.getBounds().fTop); | 719 SkASSERT(SkIntToScalar(ir.fTop) <= path.getBounds().fTop); |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 758 AntiFillPath(path, clip.bwRgn(), blitter); | 760 AntiFillPath(path, clip.bwRgn(), blitter); |
| 759 } else { | 761 } else { |
| 760 SkRegion tmp; | 762 SkRegion tmp; |
| 761 SkAAClipBlitter aaBlitter; | 763 SkAAClipBlitter aaBlitter; |
| 762 | 764 |
| 763 tmp.setRect(clip.getBounds()); | 765 tmp.setRect(clip.getBounds()); |
| 764 aaBlitter.init(blitter, &clip.aaRgn()); | 766 aaBlitter.init(blitter, &clip.aaRgn()); |
| 765 SkScan::AntiFillPath(path, tmp, &aaBlitter, true); | 767 SkScan::AntiFillPath(path, tmp, &aaBlitter, true); |
| 766 } | 768 } |
| 767 } | 769 } |
| OLD | NEW |