This source file includes following definitions.
- Swap
- Clear
- Union
- SimplifyIfNeeded
#include "cc/base/invalidation_region.h"
#include "base/metrics/histogram.h"
namespace {
const int kMaxInvalidationRectCount = 256;
}
namespace cc {
InvalidationRegion::InvalidationRegion() {}
InvalidationRegion::~InvalidationRegion() {}
void InvalidationRegion::Swap(Region* region) {
region_.Swap(region);
}
void InvalidationRegion::Clear() {
region_.Clear();
}
void InvalidationRegion::Union(const gfx::Rect& rect) {
region_.Union(rect);
SimplifyIfNeeded();
}
void InvalidationRegion::SimplifyIfNeeded() {
if (region_.GetRegionComplexity() > kMaxInvalidationRectCount)
region_ = region_.bounds();
}
}