| Index: cc/base/region.cc
|
| diff --git a/cc/base/region.cc b/cc/base/region.cc
|
| index 79c30ec8251a0b0b881aed2ba304bbcc63eb64ba..2484cc21ecbe8da92993fa1a31067b03161ab1c7 100644
|
| --- a/cc/base/region.cc
|
| +++ b/cc/base/region.cc
|
| @@ -3,8 +3,10 @@
|
| // found in the LICENSE file.
|
|
|
| #include "cc/base/region.h"
|
| +
|
| #include "base/debug/trace_event_argument.h"
|
| #include "base/values.h"
|
| +#include "cc/base/simple_enclosed_region.h"
|
|
|
| namespace cc {
|
|
|
| @@ -80,6 +82,13 @@ void Region::Subtract(const Region& region) {
|
| skregion_.op(region.skregion_, SkRegion::kDifference_Op);
|
| }
|
|
|
| +void Region::Subtract(const SimpleEnclosedRegion& region) {
|
| + for (size_t i = 0; i < region.GetRegionComplexity(); ++i) {
|
| + skregion_.op(gfx::RectToSkIRect(region.GetRect(i)),
|
| + SkRegion::kDifference_Op);
|
| + }
|
| +}
|
| +
|
| void Region::Union(const gfx::Rect& rect) {
|
| skregion_.op(gfx::RectToSkIRect(rect), SkRegion::kUnion_Op);
|
| }
|
|
|