Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5caa0ef3 authored by Romain Guy's avatar Romain Guy Committed by Android (Google) Code Review
Browse files

Merge "Don't apply AA to rects with no rotation/perspective."

parents 7bbf6f7d 181d0a6c
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -67,6 +67,10 @@ bool Matrix4::isPureTranslate() {
            ALMOST_EQUAL(data[kScaleX], 1.0f) && ALMOST_EQUAL(data[kScaleY], 1.0f);
}

bool Matrix4::isSimple() {
    return mSimpleMatrix;
}

void Matrix4::load(const float* v) {
    memcpy(data, v, sizeof(data));
    mSimpleMatrix = false;
+1 −0
Original line number Diff line number Diff line
@@ -111,6 +111,7 @@ public:
    }

    bool isPureTranslate();
    bool isSimple();

    bool changesBounds();

+2 −3
Original line number Diff line number Diff line
@@ -1478,8 +1478,7 @@ void OpenGLRenderer::drawPatch(SkBitmap* bitmap, const int32_t* xDivs, const int
 * within that boundary region and how far into the region it is.
 */
void OpenGLRenderer::drawAARect(float left, float top, float right, float bottom,
        int color, SkXfermode::Mode mode)
{
        int color, SkXfermode::Mode mode) {
    float inverseScaleX = 1.0f;
    float inverseScaleY = 1.0f;
    // The quad that we use needs to account for scaling.
@@ -1935,7 +1934,7 @@ void OpenGLRenderer::drawRect(float left, float top, float right, float bottom,
    }

    int color = p->getColor();
    if (p->isAntiAlias()) {
    if (p->isAntiAlias() && !mSnapshot->transform->isSimple()) {
        drawAARect(left, top, right, bottom, color, mode);
    } else {
        drawColorRect(left, top, right, bottom, color, mode);