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 <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/containers/adapters.h" | 9 #include "base/containers/adapters.h" |
10 #include "cc/output/compositor_frame.h" | 10 #include "cc/output/compositor_frame.h" |
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
134 cc::CompositorFrame frame; | 134 cc::CompositorFrame frame; |
135 frame.render_pass_list.push_back(std::move(render_pass)); | 135 frame.render_pass_list.push_back(std::move(render_pass)); |
136 if (delegate_->IsInHighContrastMode()) { | 136 if (delegate_->IsInHighContrastMode()) { |
137 std::unique_ptr<cc::RenderPass> invert_pass = cc::RenderPass::Create(); | 137 std::unique_ptr<cc::RenderPass> invert_pass = cc::RenderPass::Create(); |
138 invert_pass->SetNew(2, output_rect, output_rect, gfx::Transform()); | 138 invert_pass->SetNew(2, output_rect, output_rect, gfx::Transform()); |
139 cc::SharedQuadState* shared_state = | 139 cc::SharedQuadState* shared_state = |
140 invert_pass->CreateAndAppendSharedQuadState(); | 140 invert_pass->CreateAndAppendSharedQuadState(); |
141 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, | 141 shared_state->SetAll(gfx::Transform(), output_rect.size(), output_rect, |
142 output_rect, false, 1.f, SkBlendMode::kSrcOver, 0); | 142 output_rect, false, 1.f, SkBlendMode::kSrcOver, 0); |
143 auto* quad = invert_pass->CreateAndAppendDrawQuad<cc::RenderPassDrawQuad>(); | 143 auto* quad = invert_pass->CreateAndAppendDrawQuad<cc::RenderPassDrawQuad>(); |
144 cc::FilterOperations filters; | 144 render_pass->filters.Append(cc::FilterOperation::CreateInvertFilter(1.f)); |
145 filters.Append(cc::FilterOperation::CreateInvertFilter(1.f)); | |
146 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, | 145 quad->SetNew(shared_state, output_rect, output_rect, render_pass_id, |
147 0 /* mask_resource_id */, gfx::Vector2dF() /* mask_uv_scale */, | 146 0 /* mask_resource_id */, gfx::Vector2dF() /* mask_uv_scale */, |
148 gfx::Size() /* mask_texture_size */, filters, | 147 gfx::Size() /* mask_texture_size */, |
149 gfx::Vector2dF() /* filters_scale */, | 148 gfx::Vector2dF() /* filters_scale */, |
150 gfx::PointF() /* filters_origin */, | 149 gfx::PointF() /* filters_origin */); |
151 cc::FilterOperations() /* background_filters */); | |
152 frame.render_pass_list.push_back(std::move(invert_pass)); | 150 frame.render_pass_list.push_back(std::move(invert_pass)); |
153 } | 151 } |
154 | 152 |
155 return frame; | 153 return frame; |
156 } | 154 } |
157 | 155 |
158 void FrameGenerator::DrawWindowTree( | 156 void FrameGenerator::DrawWindowTree( |
159 cc::RenderPass* pass, | 157 cc::RenderPass* pass, |
160 ServerWindow* window, | 158 ServerWindow* window, |
161 const gfx::Vector2d& parent_to_root_origin_offset, | 159 const gfx::Vector2d& parent_to_root_origin_offset, |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
342 cc::SurfaceId underlay_surface_id = | 340 cc::SurfaceId underlay_surface_id = |
343 window->compositor_frame_sink_manager()->GetLatestSurfaceId( | 341 window->compositor_frame_sink_manager()->GetLatestSurfaceId( |
344 mojom::CompositorFrameSinkType::UNDERLAY); | 342 mojom::CompositorFrameSinkType::UNDERLAY); |
345 if (underlay_surface_id.is_valid()) | 343 if (underlay_surface_id.is_valid()) |
346 RemoveFrameSinkReference(underlay_surface_id.frame_sink_id()); | 344 RemoveFrameSinkReference(underlay_surface_id.frame_sink_id()); |
347 } | 345 } |
348 | 346 |
349 } // namespace ws | 347 } // namespace ws |
350 | 348 |
351 } // namespace ui | 349 } // namespace ui |
OLD | NEW |