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

Commit cf5ef927 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Remove uses of SkBitmap::copyTo"

parents 301e8273 155d5215
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -405,7 +405,11 @@ void SpriteController::SpriteImpl::setIcon(const SpriteIcon& icon) {

    uint32_t dirty;
    if (icon.isValid()) {
        icon.bitmap.copyTo(&mLocked.state.icon.bitmap, kN32_SkColorType);
        SkBitmap* bitmapCopy = &mLocked.state.icon.bitmap;
        if (bitmapCopy->tryAllocPixels(icon.bitmap.info().makeColorType(kN32_SkColorType))) {
            icon.bitmap.readPixels(bitmapCopy->info(), bitmapCopy->getPixels(),
                    bitmapCopy->rowBytes(), 0, 0);
        }

        if (!mLocked.state.icon.isValid()
                || mLocked.state.icon.hotSpotX != icon.hotSpotX
+4 −1
Original line number Diff line number Diff line
@@ -65,7 +65,10 @@ struct SpriteIcon {

    inline SpriteIcon copy() const {
        SkBitmap bitmapCopy;
        bitmap.copyTo(&bitmapCopy, kN32_SkColorType);
        if (bitmapCopy.tryAllocPixels(bitmap.info().makeColorType(kN32_SkColorType))) {
            bitmap.readPixels(bitmapCopy.info(), bitmapCopy.getPixels(), bitmapCopy.rowBytes(),
                    0, 0);
        }
        return SpriteIcon(bitmapCopy, hotSpotX, hotSpotY);
    }

+6 −1
Original line number Diff line number Diff line
@@ -157,7 +157,12 @@ static void loadSystemIconAsSpriteWithPointerIcon(JNIEnv* env, jobject contextOb
    status_t status = android_view_PointerIcon_loadSystemIcon(env,
            contextObj, style, outPointerIcon);
    if (!status) {
        outPointerIcon->bitmap.copyTo(&outSpriteIcon->bitmap, kN32_SkColorType);
        SkBitmap* bitmapCopy = &outSpriteIcon->bitmap;
        SkImageInfo bitmapCopyInfo = outPointerIcon->bitmap.info().makeColorType(kN32_SkColorType);
        if (bitmapCopy->tryAllocPixels(bitmapCopyInfo)) {
            outPointerIcon->bitmap.readPixels(bitmapCopy->info(), bitmapCopy->getPixels(),
                    bitmapCopy->rowBytes(), 0, 0);
        }
        outSpriteIcon->hotSpotX = outPointerIcon->hotSpotX;
        outSpriteIcon->hotSpotY = outPointerIcon->hotSpotY;
    }