Loading services/surfaceflinger/Layer.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -871,6 +871,12 @@ void Layer::setVisibleNonTransparentRegion(const Region& setVisibleNonTransparen this->visibleNonTransparentRegion = setVisibleNonTransparentRegion; } void Layer::clearVisibilityRegions() { visibleRegion.clear(); visibleNonTransparentRegion.clear(); coveredRegion.clear(); } // ---------------------------------------------------------------------------- // transaction // ---------------------------------------------------------------------------- Loading services/surfaceflinger/Layer.h +5 −0 Original line number Diff line number Diff line Loading @@ -434,6 +434,11 @@ public: */ void setVisibleNonTransparentRegion(const Region& visibleNonTransparentRegion); /* * Clear the visible, covered, and non-transparent regions. */ void clearVisibilityRegions(); /* * latchBuffer - called each time the screen is redrawn and returns whether * the visible regions need to be recomputed (this is a fairly heavy Loading services/surfaceflinger/SurfaceFlinger.cpp +5 −0 Original line number Diff line number Diff line Loading @@ -2534,6 +2534,11 @@ void SurfaceFlinger::computeVisibleRegions(const sp<const DisplayDevice>& displa } } if (visibleRegion.isEmpty()) { layer->clearVisibilityRegions(); return; } // Clip the covered region to the visible region coveredRegion = aboveCoveredLayers.intersect(visibleRegion); Loading Loading
services/surfaceflinger/Layer.cpp +6 −0 Original line number Diff line number Diff line Loading @@ -871,6 +871,12 @@ void Layer::setVisibleNonTransparentRegion(const Region& setVisibleNonTransparen this->visibleNonTransparentRegion = setVisibleNonTransparentRegion; } void Layer::clearVisibilityRegions() { visibleRegion.clear(); visibleNonTransparentRegion.clear(); coveredRegion.clear(); } // ---------------------------------------------------------------------------- // transaction // ---------------------------------------------------------------------------- Loading
services/surfaceflinger/Layer.h +5 −0 Original line number Diff line number Diff line Loading @@ -434,6 +434,11 @@ public: */ void setVisibleNonTransparentRegion(const Region& visibleNonTransparentRegion); /* * Clear the visible, covered, and non-transparent regions. */ void clearVisibilityRegions(); /* * latchBuffer - called each time the screen is redrawn and returns whether * the visible regions need to be recomputed (this is a fairly heavy Loading
services/surfaceflinger/SurfaceFlinger.cpp +5 −0 Original line number Diff line number Diff line Loading @@ -2534,6 +2534,11 @@ void SurfaceFlinger::computeVisibleRegions(const sp<const DisplayDevice>& displa } } if (visibleRegion.isEmpty()) { layer->clearVisibilityRegions(); return; } // Clip the covered region to the visible region coveredRegion = aboveCoveredLayers.intersect(visibleRegion); Loading