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

Side by Side Diff: cc/test/fake_layer_tree_host_client.cc

Issue 12212007: cc: Route offscreen context creation for compositor to the browser. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Restart with GrContext owned in cc Created 7 years, 10 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 "cc/test/fake_layer_tree_host_client.h" 5 #include "cc/test/fake_layer_tree_host_client.h"
6 6
7 namespace cc { 7 namespace cc {
8 8
9 FakeLayerImplTreeHostClient::FakeLayerImplTreeHostClient(bool useSoftwareRenderi ng, bool useDelegatingRenderer)
10 : m_useSoftwareRendering(useSoftwareRendering)
11 , m_useDelegatingRenderer(useDelegatingRenderer)
12 {
13 }
14
15 FakeLayerImplTreeHostClient::~FakeLayerImplTreeHostClient() { }
16
9 scoped_ptr<OutputSurface> FakeLayerImplTreeHostClient::createOutputSurface() 17 scoped_ptr<OutputSurface> FakeLayerImplTreeHostClient::createOutputSurface()
10 { 18 {
11 if (m_useSoftwareRendering) { 19 if (m_useSoftwareRendering) {
12 if (m_useDelegatingRenderer) 20 if (m_useDelegatingRenderer)
13 return FakeOutputSurface::CreateDelegatingSoftware(make_scoped_ptr(n ew FakeSoftwareOutputDevice).PassAs<SoftwareOutputDevice>()).PassAs<OutputSurfac e>(); 21 return FakeOutputSurface::CreateDelegatingSoftware(make_scoped_ptr(n ew FakeSoftwareOutputDevice).PassAs<SoftwareOutputDevice>()).PassAs<OutputSurfac e>();
14 22
15 return FakeOutputSurface::CreateSoftware(make_scoped_ptr(new FakeSoftwar eOutputDevice).PassAs<SoftwareOutputDevice>()).PassAs<OutputSurface>(); 23 return FakeOutputSurface::CreateSoftware(make_scoped_ptr(new FakeSoftwar eOutputDevice).PassAs<SoftwareOutputDevice>()).PassAs<OutputSurface>();
16 } 24 }
17 25
18 WebKit::WebGraphicsContext3D::Attributes attrs; 26 WebKit::WebGraphicsContext3D::Attributes attrs;
19 if (m_useDelegatingRenderer) 27 if (m_useDelegatingRenderer)
20 return FakeOutputSurface::CreateDelegating3d(FakeWebGraphicsContext3D::C reate(attrs).PassAs<WebKit::WebGraphicsContext3D>()).PassAs<OutputSurface>(); 28 return FakeOutputSurface::CreateDelegating3d(FakeWebGraphicsContext3D::C reate(attrs).PassAs<WebKit::WebGraphicsContext3D>()).PassAs<OutputSurface>();
21 29
22 return FakeOutputSurface::Create3d(FakeWebGraphicsContext3D::Create(attrs).P assAs<WebKit::WebGraphicsContext3D>()).PassAs<OutputSurface>(); 30 return FakeOutputSurface::Create3d(FakeWebGraphicsContext3D::Create(attrs).P assAs<WebKit::WebGraphicsContext3D>()).PassAs<OutputSurface>();
23 } 31 }
24 32
33 WebKit::WebGraphicsContext3D* FakeLayerImplTreeHostClient::OffscreenContext3dFor MainThread()
34 {
35 return OffscreenContext3dForCompositorThread();
36 }
37
38 WebKit::WebGraphicsContext3D* FakeLayerImplTreeHostClient::OffscreenContext3dFor CompositorThread()
39 {
40 if (m_offscreenContext3d)
41 return m_offscreenContext3d.get();
42
43 WebKit::WebGraphicsContext3D::Attributes attrs;
44 m_offscreenContext3d = FakeWebGraphicsContext3D::Create(attrs).PassAs<WebKit ::WebGraphicsContext3D>();
45 return m_offscreenContext3d.get();
46 }
47
25 scoped_ptr<InputHandler> FakeLayerImplTreeHostClient::createInputHandler() 48 scoped_ptr<InputHandler> FakeLayerImplTreeHostClient::createInputHandler()
26 { 49 {
27 return scoped_ptr<InputHandler>(); 50 return scoped_ptr<InputHandler>();
28 } 51 }
29 52
30 scoped_ptr<FontAtlas> FakeLayerImplTreeHostClient::createFontAtlas() 53 scoped_ptr<FontAtlas> FakeLayerImplTreeHostClient::createFontAtlas()
31 { 54 {
32 return scoped_ptr<FontAtlas>(); 55 return scoped_ptr<FontAtlas>();
33 } 56 }
34 57
35 } // namespace cc 58 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698