OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "ui/compositor/test/in_process_context_factory.h" | 5 #include "ui/compositor/test/in_process_context_factory.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 // GL surface. | 49 // GL surface. |
50 class DirectOutputSurface : public cc::OutputSurface { | 50 class DirectOutputSurface : public cc::OutputSurface { |
51 public: | 51 public: |
52 DirectOutputSurface(scoped_refptr<InProcessContextProvider> context_provider) | 52 DirectOutputSurface(scoped_refptr<InProcessContextProvider> context_provider) |
53 : cc::OutputSurface(std::move(context_provider)), | 53 : cc::OutputSurface(std::move(context_provider)), |
54 weak_ptr_factory_(this) {} | 54 weak_ptr_factory_(this) {} |
55 | 55 |
56 ~DirectOutputSurface() override {} | 56 ~DirectOutputSurface() override {} |
57 | 57 |
58 // cc::OutputSurface implementation. | 58 // cc::OutputSurface implementation. |
| 59 bool BindToClient(cc::OutputSurfaceClient* client) override { |
| 60 return OutputSurface::BindToClient(client); |
| 61 } |
59 void EnsureBackbuffer() override {} | 62 void EnsureBackbuffer() override {} |
60 void DiscardBackbuffer() override {} | 63 void DiscardBackbuffer() override {} |
61 void BindFramebuffer() override { | 64 void BindFramebuffer() override { |
62 context_provider()->ContextGL()->BindFramebuffer(GL_FRAMEBUFFER, 0); | 65 context_provider()->ContextGL()->BindFramebuffer(GL_FRAMEBUFFER, 0); |
63 } | 66 } |
64 bool BindToClient(cc::OutputSurfaceClient* client) override { | 67 void Reshape(const gfx::Size& size, |
65 if (!OutputSurface::BindToClient(client)) | 68 float device_scale_factor, |
66 return false; | 69 const gfx::ColorSpace& color_space, |
67 return true; | 70 bool has_alpha) override { |
| 71 context_provider()->ContextGL()->ResizeCHROMIUM( |
| 72 size.width(), size.height(), device_scale_factor, has_alpha); |
68 } | 73 } |
69 void SwapBuffers(cc::OutputSurfaceFrame frame) override { | 74 void SwapBuffers(cc::OutputSurfaceFrame frame) override { |
70 DCHECK(context_provider_.get()); | 75 DCHECK(context_provider_.get()); |
71 if (frame.sub_buffer_rect == gfx::Rect(frame.size)) { | 76 if (frame.sub_buffer_rect == gfx::Rect(frame.size)) { |
72 context_provider_->ContextSupport()->Swap(); | 77 context_provider_->ContextSupport()->Swap(); |
73 } else { | 78 } else { |
74 context_provider_->ContextSupport()->PartialSwapBuffers( | 79 context_provider_->ContextSupport()->PartialSwapBuffers( |
75 frame.sub_buffer_rect); | 80 frame.sub_buffer_rect); |
76 } | 81 } |
77 gpu::gles2::GLES2Interface* gl = context_provider_->ContextGL(); | 82 gpu::gles2::GLES2Interface* gl = context_provider_->ContextGL(); |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
275 | 280 |
276 void InProcessContextFactory::AddObserver(ContextFactoryObserver* observer) { | 281 void InProcessContextFactory::AddObserver(ContextFactoryObserver* observer) { |
277 observer_list_.AddObserver(observer); | 282 observer_list_.AddObserver(observer); |
278 } | 283 } |
279 | 284 |
280 void InProcessContextFactory::RemoveObserver(ContextFactoryObserver* observer) { | 285 void InProcessContextFactory::RemoveObserver(ContextFactoryObserver* observer) { |
281 observer_list_.RemoveObserver(observer); | 286 observer_list_.RemoveObserver(observer); |
282 } | 287 } |
283 | 288 |
284 } // namespace ui | 289 } // namespace ui |
OLD | NEW |