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

Commit 1c60a74a authored by Ricardo Cerqueira's avatar Ricardo Cerqueira Committed by Steve Kondik
Browse files

surfaceflinger: Reimplement hwrotation

Change-Id: Ia26bb36b5b6de132af49c272c4472ad2703afbda
parent 7447b2c9
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -367,6 +367,20 @@ status_t DisplayDevice::orientationToTransfrom(
        int orientation, int w, int h, Transform* tr)
{
    uint32_t flags = 0;
    char value[PROPERTY_VALUE_MAX];
    property_get("ro.sf.hwrotation", value, "0");
    int additionalRot = atoi(value);

    if (additionalRot) {
        additionalRot /= 90;
        if (orientation == DisplayState::eOrientationUnchanged) {
            orientation = additionalRot;
        } else {
            orientation += additionalRot;
            orientation %= 4;
        }
    }

    switch (orientation) {
    case DisplayState::eOrientationDefault:
        flags = Transform::ROT_0;
@@ -383,6 +397,7 @@ status_t DisplayDevice::orientationToTransfrom(
    default:
        return BAD_VALUE;
    }

    tr->set(flags, w, h);
    return NO_ERROR;
}