Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(284)

Unified Diff: cc/output/overlay_processor.cc

Issue 2543473004: cc: Move filters from RenderPassDrawQuad to RenderPass (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/output/overlay_processor.cc
diff --git a/cc/output/overlay_processor.cc b/cc/output/overlay_processor.cc
index 7996ce6789f5c0eb20c6acb1641848028a149cfd..68a9d824799e1ad2d88aa59e7b97d0e7d6529fd0 100644
--- a/cc/output/overlay_processor.cc
+++ b/cc/output/overlay_processor.cc
@@ -35,6 +35,8 @@ gfx::Rect OverlayProcessor::GetAndResetOverlayDamage() {
bool OverlayProcessor::ProcessForCALayers(
ResourceProvider* resource_provider,
RenderPass* render_pass,
+ const RenderPassFilterList& render_pass_filters,
+ const RenderPassFilterList& render_pass_background_filters,
OverlayCandidateList* overlay_candidates,
CALayerOverlayList* ca_layer_overlays,
gfx::Rect* damage_rect) {
@@ -43,9 +45,10 @@ bool OverlayProcessor::ProcessForCALayers(
if (!overlay_validator || !overlay_validator->AllowCALayerOverlays())
return false;
- if (!ProcessForCALayerOverlays(resource_provider,
- gfx::RectF(render_pass->output_rect),
- render_pass->quad_list, ca_layer_overlays))
+ if (!ProcessForCALayerOverlays(
+ resource_provider, gfx::RectF(render_pass->output_rect),
+ render_pass->quad_list, render_pass_filters,
+ render_pass_background_filters, ca_layer_overlays))
return false;
// CALayer overlays are all-or-nothing. If all quads were replaced with
@@ -57,11 +60,14 @@ bool OverlayProcessor::ProcessForCALayers(
return true;
}
-void OverlayProcessor::ProcessForOverlays(ResourceProvider* resource_provider,
- RenderPass* render_pass,
- OverlayCandidateList* candidates,
- CALayerOverlayList* ca_layer_overlays,
- gfx::Rect* damage_rect) {
+void OverlayProcessor::ProcessForOverlays(
+ ResourceProvider* resource_provider,
+ RenderPass* render_pass,
+ const RenderPassFilterList& render_pass_filters,
+ const RenderPassFilterList& render_pass_background_filters,
+ OverlayCandidateList* candidates,
+ CALayerOverlayList* ca_layer_overlays,
+ gfx::Rect* damage_rect) {
// If we have any copy requests, we can't remove any quads for overlays or
// CALayers because the framebuffer would be missing the removed quads'
// contents.
@@ -73,7 +79,8 @@ void OverlayProcessor::ProcessForOverlays(ResourceProvider* resource_provider,
}
// First attempt to process for CALayers.
- if (ProcessForCALayers(resource_provider, render_pass, candidates,
+ if (ProcessForCALayers(resource_provider, render_pass, render_pass_filters,
+ render_pass_background_filters, candidates,
ca_layer_overlays, damage_rect)) {
return;
}

Powered by Google App Engine
This is Rietveld 408576698