Loading libs/hwui/OpenGLRenderer.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -353,6 +353,8 @@ bool OpenGLRenderer::createLayer(sp<Snapshot> snapshot, float left, float top, // Layers only make sense if they are in the framebuffer's bounds bounds.intersect(*mSnapshot->clipRect); bounds.snapToPixelBoundaries(); if (bounds.isEmpty() || bounds.getWidth() > mMaxTextureSize || bounds.getHeight() > mMaxTextureSize) { return false; Loading libs/hwui/Rect.h +7 −0 Original line number Diff line number Diff line Loading @@ -148,6 +148,13 @@ struct Rect { return false; } void snapToPixelBoundaries() { left = floor(left); top = floor(top); right = ceil(right); bottom = ceil(bottom); } void dump() const { LOGD("Rect[l=%f t=%f r=%f b=%f]", left, top, right, bottom); } Loading Loading
libs/hwui/OpenGLRenderer.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -353,6 +353,8 @@ bool OpenGLRenderer::createLayer(sp<Snapshot> snapshot, float left, float top, // Layers only make sense if they are in the framebuffer's bounds bounds.intersect(*mSnapshot->clipRect); bounds.snapToPixelBoundaries(); if (bounds.isEmpty() || bounds.getWidth() > mMaxTextureSize || bounds.getHeight() > mMaxTextureSize) { return false; Loading
libs/hwui/Rect.h +7 −0 Original line number Diff line number Diff line Loading @@ -148,6 +148,13 @@ struct Rect { return false; } void snapToPixelBoundaries() { left = floor(left); top = floor(top); right = ceil(right); bottom = ceil(bottom); } void dump() const { LOGD("Rect[l=%f t=%f r=%f b=%f]", left, top, right, bottom); } Loading