summaryrefslogtreecommitdiffstats
path: root/cc/test
diff options
context:
space:
mode:
authorskaslev@chromium.org <skaslev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-30 01:32:28 +0000
committerskaslev@chromium.org <skaslev@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-30 01:32:28 +0000
commitb32b0a49291f1ad51fc1bb190293c5836aa6c4e9 (patch)
tree9d9263665f46b719eebbb6f314f89ac39d3699ec /cc/test
parent5411d8200526d098042844fbea9871ed17c7f1d7 (diff)
downloadchromium_src-b32b0a49291f1ad51fc1bb190293c5836aa6c4e9.zip
chromium_src-b32b0a49291f1ad51fc1bb190293c5836aa6c4e9.tar.gz
chromium_src-b32b0a49291f1ad51fc1bb190293c5836aa6c4e9.tar.bz2
Fixes a bug when the framebuffer is cleared with invalid scissor rect.
BUG=170305 Review URL: https://chromiumcodereview.appspot.com/12036091 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179498 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/test')
-rw-r--r--cc/test/render_pass_test_utils.cc15
-rw-r--r--cc/test/render_pass_test_utils.h5
2 files changed, 20 insertions, 0 deletions
diff --git a/cc/test/render_pass_test_utils.cc b/cc/test/render_pass_test_utils.cc
index b9f1217..bda83dd 100644
--- a/cc/test/render_pass_test_utils.cc
+++ b/cc/test/render_pass_test_utils.cc
@@ -41,6 +41,21 @@ SolidColorDrawQuad* addQuad(TestRenderPass* pass,
return quadPtr;
}
+SolidColorDrawQuad* addClippedQuad(TestRenderPass* pass,
+ const gfx::Rect& rect,
+ SkColor color) {
+ MockQuadCuller quadSink(pass->quad_list, pass->shared_quad_state_list);
+ AppendQuadsData data(pass->id);
+ SharedQuadState* sharedState =
+ quadSink.useSharedQuadState(SharedQuadState::Create());
+ sharedState->SetAll(gfx::Transform(), rect, rect, true, 1);
+ scoped_ptr<SolidColorDrawQuad> quad = SolidColorDrawQuad::Create();
+ quad->SetNew(sharedState, rect, color);
+ SolidColorDrawQuad* quadPtr = quad.get();
+ quadSink.append(quad.PassAs<DrawQuad>(), data);
+ return quadPtr;
+}
+
void addRenderPassQuad(TestRenderPass* toPass,
TestRenderPass* contributingPass) {
MockQuadCuller quadSink(toPass->quad_list, toPass->shared_quad_state_list);
diff --git a/cc/test/render_pass_test_utils.h b/cc/test/render_pass_test_utils.h
index b4d8dba..d9c2c91 100644
--- a/cc/test/render_pass_test_utils.h
+++ b/cc/test/render_pass_test_utils.h
@@ -32,6 +32,11 @@ SolidColorDrawQuad* addQuad(TestRenderPass* pass,
const gfx::Rect& rect,
SkColor color);
+// Adds a solid quad to a given render pass and sets is_clipped=true.
+SolidColorDrawQuad* addClippedQuad(TestRenderPass* pass,
+ const gfx::Rect& rect,
+ SkColor color);
+
// Adds a render pass quad to an existing render pass.
void addRenderPassQuad(TestRenderPass* toPass,
TestRenderPass* contributingPass);