OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "services/ui/ws/frame_generator.h" | 5 #include "services/ui/ws/frame_generator.h" |
6 | 6 |
7 #include "base/containers/adapters.h" | 7 #include "base/containers/adapters.h" |
8 #include "cc/output/compositor_frame.h" | 8 #include "cc/output/compositor_frame.h" |
9 #include "cc/quads/render_pass.h" | 9 #include "cc/quads/render_pass.h" |
10 #include "cc/quads/render_pass_draw_quad.h" | 10 #include "cc/quads/render_pass_draw_quad.h" |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 frame.render_pass_list.push_back(std::move(render_pass)); | 138 frame.render_pass_list.push_back(std::move(render_pass)); |
139 if (delegate_->IsInHighContrastMode()) { | 139 if (delegate_->IsInHighContrastMode()) { |
140 std::unique_ptr<cc::RenderPass> invert_pass = cc::RenderPass::Create(); | 140 std::unique_ptr<cc::RenderPass> invert_pass = cc::RenderPass::Create(); |
141 invert_pass->SetNew(cc::RenderPassId(2, 0), output_rect, output_rect, | 141 invert_pass->SetNew(cc::RenderPassId(2, 0), output_rect, output_rect, |
142 gfx::Transform()); | 142 gfx::Transform()); |
143 cc::SharedQuadState* shared_state = | 143 cc::SharedQuadState* shared_state = |
144 invert_pass->CreateAndAppendSharedQuadState(); | 144 invert_pass->CreateAndAppendSharedQuadState(); |
145 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, | 145 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, |
146 output_rect, false, 1.f, SkBlendMode::kSrcOver, 0); | 146 output_rect, false, 1.f, SkBlendMode::kSrcOver, 0); |
147 auto* quad = invert_pass->CreateAndAppendDrawQuad<cc::RenderPassDrawQuad>(); | 147 auto* quad = invert_pass->CreateAndAppendDrawQuad<cc::RenderPassDrawQuad>(); |
148 cc::FilterOperations filters; | 148 render_pass->filters.Append(cc::FilterOperation::CreateInvertFilter(1.f)); |
149 filters.Append(cc::FilterOperation::CreateInvertFilter(1.f)); | |
150 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, | 149 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, |
151 0 /* mask_resource_id */, gfx::Vector2dF() /* mask_uv_scale */, | 150 0 /* mask_resource_id */, gfx::Vector2dF() /* mask_uv_scale */, |
152 gfx::Size() /* mask_texture_size */, filters, | 151 gfx::Size() /* mask_texture_size */, |
153 gfx::Vector2dF() /* filters_scale */, | 152 gfx::Vector2dF() /* filters_scale */, |
154 gfx::PointF() /* filters_origin */, | 153 gfx::PointF() /* filters_origin */); |
155 cc::FilterOperations() /* background_filters */); | |
156 frame.render_pass_list.push_back(std::move(invert_pass)); | 154 frame.render_pass_list.push_back(std::move(invert_pass)); |
157 } | 155 } |
158 | 156 |
159 return frame; | 157 return frame; |
160 } | 158 } |
161 | 159 |
162 void FrameGenerator::DrawWindowTree( | 160 void FrameGenerator::DrawWindowTree( |
163 cc::RenderPass* pass, | 161 cc::RenderPass* pass, |
164 ServerWindow* window, | 162 ServerWindow* window, |
165 const gfx::Vector2d& parent_to_root_origin_offset, | 163 const gfx::Vector2d& parent_to_root_origin_offset, |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 cc::SurfaceId underlay_surface_id = | 351 cc::SurfaceId underlay_surface_id = |
354 window->compositor_frame_sink_manager()->GetLatestSurfaceId( | 352 window->compositor_frame_sink_manager()->GetLatestSurfaceId( |
355 mojom::CompositorFrameSinkType::UNDERLAY); | 353 mojom::CompositorFrameSinkType::UNDERLAY); |
356 if (underlay_surface_id.is_valid()) | 354 if (underlay_surface_id.is_valid()) |
357 RemoveFrameSinkReference(underlay_surface_id.frame_sink_id()); | 355 RemoveFrameSinkReference(underlay_surface_id.frame_sink_id()); |
358 } | 356 } |
359 | 357 |
360 } // namespace ws | 358 } // namespace ws |
361 | 359 |
362 } // namespace ui | 360 } // namespace ui |
OLD | NEW |