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

Commit 2b99e55e authored by Mathias Agopian's avatar Mathias Agopian
Browse files

boot animation is dithered and scaled

disable dithering which shouldn't have been enabled
in the first place because the frames are typically scaled.
we still use a 16-bits texture format to preserve memory.

Bug: 5600948
Change-Id: Ib4d6e133df4375d0d735cd4325b6e589bbc5dafe
parent 785fd368
Loading
Loading
Loading
Loading
+10 −3
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@
#include <surfaceflinger/ISurfaceComposerClient.h>

#include <core/SkBitmap.h>
#include <core/SkStream.h>
#include <images/SkImageDecoder.h>

#include <GLES/gl.h>
@@ -150,9 +151,15 @@ status_t BootAnimation::initTexture(void* buffer, size_t len)
    //StopWatch watch("blah");

    SkBitmap bitmap;
    SkImageDecoder::DecodeMemory(buffer, len,
            &bitmap, SkBitmap::kRGB_565_Config,
    SkMemoryStream  stream(buffer, len);
    SkImageDecoder* codec = SkImageDecoder::Factory(&stream);
    codec->setDitherImage(false);
    if (codec) {
        codec->decode(&stream, &bitmap,
                SkBitmap::kRGB_565_Config,
                SkImageDecoder::kDecodePixels_Mode);
        delete codec;
    }

    // ensure we can call getPixels(). No need to call unlock, since the
    // bitmap will go out of scope when we return from this method.