From 0e28d110ce80a66d42268cce003e792edfef0006 Mon Sep 17 00:00:00 2001 From: ericrk Date: Mon, 13 Jul 2015 16:32:05 -0700 Subject: NotifyAllTileTasksCompleted for synchronous renderer compositor This change ensures that in cases where no work is enqueued on the tile manager when we background, the NotifyAllTileTasksCompleted signal is still delivered. Added a test to ensure that we call the appropriate callback in the synchronous renderer case. BUG=505495 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1228323004 Cr-Commit-Position: refs/heads/master@{#338589} --- cc/trees/layer_tree_host_unittest.cc | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'cc/trees/layer_tree_host_unittest.cc') diff --git a/cc/trees/layer_tree_host_unittest.cc b/cc/trees/layer_tree_host_unittest.cc index 6c3ae9e..6d9c9c6 100644 --- a/cc/trees/layer_tree_host_unittest.cc +++ b/cc/trees/layer_tree_host_unittest.cc @@ -353,6 +353,22 @@ class LayerTreeHostFreeWorkerContextResourcesOnZeroMemoryLimit SINGLE_AND_MULTI_THREAD_TEST_F( LayerTreeHostFreeWorkerContextResourcesOnZeroMemoryLimit); +// Test if the LTH successfully frees resources on the worker context when +// hard memory limit is set to zero while using a synchronous compositor (like +// Android WebView). +class LayerTreeHostFreeWorkerContextResourcesOnZeroMemoryLimitSynchronous + : public LayerTreeHostFreeWorkerContextResourcesOnZeroMemoryLimit { + public: + void InitializeSettings(LayerTreeSettings* settings) override { + LayerTreeHostFreeWorkerContextResourcesTest::InitializeSettings(settings); + settings->use_external_begin_frame_source = true; + settings->using_synchronous_renderer_compositor = true; + } +}; + +SINGLE_AND_MULTI_THREAD_TEST_F( + LayerTreeHostFreeWorkerContextResourcesOnZeroMemoryLimitSynchronous); + // Two setNeedsCommits in a row should lead to at least 1 commit and at least 1 // draw with frame 0. class LayerTreeHostTestSetNeedsCommit1 : public LayerTreeHostTest { -- cgit v1.1