Index: cc/output/gl_renderer.cc |
diff --git a/cc/output/gl_renderer.cc b/cc/output/gl_renderer.cc |
index 13a98f656f6c3c25018493987c1ea7f36787cfd6..ee94a4c9f9b976e11ce81ee2867d31d4729e0699 100644 |
--- a/cc/output/gl_renderer.cc |
+++ b/cc/output/gl_renderer.cc |
@@ -1626,7 +1626,8 @@ void GLRenderer::DrawContentQuadAA(const DrawingFrame* frame, |
SetupQuadForAntialiasing(device_transform, quad, &local_quad, edge); |
ResourceProvider::ScopedSamplerGL quad_resource_lock( |
- resource_provider_, resource_id, GL_LINEAR); |
+ resource_provider_, resource_id, |
+ quad->nearest_neighbor ? GL_NEAREST : GL_LINEAR); |
SamplerType sampler = |
SamplerTypeFromTextureTarget(quad_resource_lock.target()); |
@@ -1710,7 +1711,8 @@ void GLRenderer::DrawContentQuadNoAA(const DrawingFrame* frame, |
bool scaled = (tex_to_geom_scale_x != 1.f || tex_to_geom_scale_y != 1.f); |
GLenum filter = |
- (scaled || !quad->quadTransform().IsIdentityOrIntegerTranslation()) |
+ (scaled || !quad->quadTransform().IsIdentityOrIntegerTranslation()) && |
+ !quad->nearest_neighbor |
? GL_LINEAR |
: GL_NEAREST; |