The exposed region consists of two components:
1) What's VISIBLE now and was COVERED before
2) What's EXPOSED now less that was EXPOSED before
However, the first component should be regarded as dirty
region in above layer. For efficiency reason we compute
dirty region aggressively.
const Region oldVisibleRegion = layer->visibleRegionScreen;
const Region oldCoveredRegion = layer->coveredRegionScreen;
const Region oldExposed = oldVisibleRegion - oldCoveredRegion;
- dirty = (visibleRegion&oldCoveredRegion) | (newExposed-oldExposed);
+ dirty = (newExposed-oldExposed);
}
dirty.subtractSelf(aboveOpaqueLayers);