diff options
author | aelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-11 12:19:29 +0000 |
---|---|---|
committer | aelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-06-11 12:19:29 +0000 |
commit | 36e5ff130092eb95bf734c39d15e1ae48fad1581 (patch) | |
tree | 63c4142ae12770156248e2c1c61fd4c93dd089a4 /cc/output/gl_renderer_unittest.cc | |
parent | f74356578beb2e385a1bd5a1a26677ce058bc4bf (diff) | |
download | chromium_src-36e5ff130092eb95bf734c39d15e1ae48fad1581.zip chromium_src-36e5ff130092eb95bf734c39d15e1ae48fad1581.tar.gz chromium_src-36e5ff130092eb95bf734c39d15e1ae48fad1581.tar.bz2 |
Unified OutputSurface::SwapBuffers.
This patch introduces a hard contract that CC will always call
OutputSurface::SwapBuffers(), and OutputSurface will always respond with
OutputSurfaceClient::OnSwapBuffersComplete(), in all rendering modes. I
deleted the methods SendFrameToParentCompositor, PostSubBuffer, and
OnSendFrameToParentCompositorAck, subsuming them into SwapBuffers. I also
deleted all the settings and capabilities specifying which variant needed to be
called.
This should be a no-op for all graphics modes except for Android WebView, where
it has the benefits of ensuring OnSwapBuffersComplete is called and that
CompositorFrameMetadata is available even though no parent compositor exists.
NOTRY=true
BUG=237006
Review URL: https://chromiumcodereview.appspot.com/16304003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205501 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/output/gl_renderer_unittest.cc')
-rw-r--r-- | cc/output/gl_renderer_unittest.cc | 49 |
1 files changed, 8 insertions, 41 deletions
diff --git a/cc/output/gl_renderer_unittest.cc b/cc/output/gl_renderer_unittest.cc index c1c8842..73ba45c 100644 --- a/cc/output/gl_renderer_unittest.cc +++ b/cc/output/gl_renderer_unittest.cc @@ -264,7 +264,7 @@ class GLRendererTest : public testing::Test { virtual void SetUp() { renderer_.Initialize(); } - void SwapBuffers() { renderer_.SwapBuffers(ui::LatencyInfo()); } + void SwapBuffers() { renderer_.SwapBuffers(); } FrameCountingMemoryAllocationSettingContext* Context() { return static_cast<FrameCountingMemoryAllocationSettingContext*>( @@ -1552,13 +1552,11 @@ class MockOutputSurface : public OutputSurface { } virtual ~MockOutputSurface() {} - MOCK_METHOD1(SendFrameToParentCompositor, void(CompositorFrame* frame)); MOCK_METHOD0(EnsureBackbuffer, void()); MOCK_METHOD0(DiscardBackbuffer, void()); MOCK_METHOD2(Reshape, void(gfx::Size size, float scale_factor)); MOCK_METHOD0(BindFramebuffer, void()); - MOCK_METHOD2(PostSubBuffer, void(gfx::Rect rect, const ui::LatencyInfo&)); - MOCK_METHOD1(SwapBuffers, void(const ui::LatencyInfo&)); + MOCK_METHOD1(SwapBuffers, void(CompositorFrame* frame)); }; class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { @@ -1569,7 +1567,7 @@ class MockOutputSurfaceTest : public testing::Test, public FakeRendererClient { virtual void SetUp() { EXPECT_TRUE(renderer_.Initialize()); } - void SwapBuffers() { renderer_.SwapBuffers(ui::LatencyInfo()); } + void SwapBuffers() { renderer_.SwapBuffers(); } void DrawFrame() { gfx::Rect viewport_rect(DeviceViewport()); @@ -1608,62 +1606,31 @@ TEST_F(MockOutputSurfaceTest, DrawFrameAndSwap) { DrawFrame(); EXPECT_CALL(output_surface_, SwapBuffers(_)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); + renderer_.SwapBuffers(); } TEST_F(MockOutputSurfaceTest, DrawFrameAndResizeAndSwap) { DrawFrame(); EXPECT_CALL(output_surface_, SwapBuffers(_)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); + renderer_.SwapBuffers(); set_viewport_and_scale(gfx::Size(2, 2), 2.f); renderer_.ViewportChanged(); DrawFrame(); EXPECT_CALL(output_surface_, SwapBuffers(_)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); + renderer_.SwapBuffers(); DrawFrame(); EXPECT_CALL(output_surface_, SwapBuffers(_)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); + renderer_.SwapBuffers(); set_viewport_and_scale(gfx::Size(1, 1), 1.f); renderer_.ViewportChanged(); DrawFrame(); EXPECT_CALL(output_surface_, SwapBuffers(_)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); -} - -class MockOutputSurfaceTestWithPartialSwap : public MockOutputSurfaceTest { - public: - virtual const LayerTreeSettings& Settings() const OVERRIDE { - static LayerTreeSettings fake_settings; - fake_settings.partial_swap_enabled = true; - return fake_settings; - } -}; - -TEST_F(MockOutputSurfaceTestWithPartialSwap, DrawFrameAndSwap) { - DrawFrame(); - - EXPECT_CALL(output_surface_, PostSubBuffer(_, _)).Times(1); - renderer_.SwapBuffers(ui::LatencyInfo()); -} - -class MockOutputSurfaceTestWithSendCompositorFrame - : public MockOutputSurfaceTest { - public: - virtual const LayerTreeSettings& Settings() const OVERRIDE { - static LayerTreeSettings fake_settings; - fake_settings.compositor_frame_message = true; - return fake_settings; - } -}; - -TEST_F(MockOutputSurfaceTestWithSendCompositorFrame, DrawFrame) { - EXPECT_CALL(output_surface_, SendFrameToParentCompositor(_)).Times(1); - DrawFrame(); + renderer_.SwapBuffers(); } class GLRendererTestSyncPoint : public GLRendererPixelTest { |