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

Commit eef7aaae authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Use pixel format from buffer to determine opacity." am: f667bfa4 am: e3eb4df3

Change-Id: I5031e1bd77b2ce54fee8a8e5f4cd66454a70c865
parents a281c556 e3eb4df3
Loading
Loading
Loading
Loading
+8 −1
Original line number Original line Diff line number Diff line
@@ -250,7 +250,14 @@ bool BufferLayer::isHdrY410() const {
    // pixel format is HDR Y410 masquerading as RGBA_1010102
    // pixel format is HDR Y410 masquerading as RGBA_1010102
    return (mCurrentDataSpace == ui::Dataspace::BT2020_ITU_PQ &&
    return (mCurrentDataSpace == ui::Dataspace::BT2020_ITU_PQ &&
            getDrawingApi() == NATIVE_WINDOW_API_MEDIA &&
            getDrawingApi() == NATIVE_WINDOW_API_MEDIA &&
            mActiveBuffer->getPixelFormat() == HAL_PIXEL_FORMAT_RGBA_1010102);
            getPixelFormat() == HAL_PIXEL_FORMAT_RGBA_1010102);
}

PixelFormat BufferLayer::getPixelFormat() const {
    if (!mActiveBuffer) {
        return PIXEL_FORMAT_NONE;
    }
    return mActiveBuffer->format;
}
}


void BufferLayer::setPerFrameData(const sp<const DisplayDevice>& displayDevice,
void BufferLayer::setPerFrameData(const sp<const DisplayDevice>& displayDevice,
+2 −1
Original line number Original line Diff line number Diff line
@@ -127,7 +127,6 @@ private:
    virtual Region getDrawingSurfaceDamage() const = 0;
    virtual Region getDrawingSurfaceDamage() const = 0;
    virtual const HdrMetadata& getDrawingHdrMetadata() const = 0;
    virtual const HdrMetadata& getDrawingHdrMetadata() const = 0;
    virtual int getDrawingApi() const = 0;
    virtual int getDrawingApi() const = 0;
    virtual PixelFormat getPixelFormat() const = 0;


    virtual uint64_t getFrameNumber() const = 0;
    virtual uint64_t getFrameNumber() const = 0;


@@ -191,6 +190,8 @@ private:
    std::shared_ptr<compositionengine::Layer> mCompositionLayer;
    std::shared_ptr<compositionengine::Layer> mCompositionLayer;


    FloatRect computeSourceBounds(const FloatRect& parentBounds) const override;
    FloatRect computeSourceBounds(const FloatRect& parentBounds) const override;

    PixelFormat getPixelFormat() const;
};
};


} // namespace android
} // namespace android
+0 −6
Original line number Original line Diff line number Diff line
@@ -192,10 +192,6 @@ int BufferQueueLayer::getDrawingApi() const {
    return mConsumer->getCurrentApi();
    return mConsumer->getCurrentApi();
}
}


PixelFormat BufferQueueLayer::getPixelFormat() const {
    return mFormat;
}

uint64_t BufferQueueLayer::getFrameNumber() const {
uint64_t BufferQueueLayer::getFrameNumber() const {
    Mutex::Autolock lock(mQueueItemLock);
    Mutex::Autolock lock(mQueueItemLock);
    uint64_t frameNumber = mQueueItems[0].mFrameNumber;
    uint64_t frameNumber = mQueueItems[0].mFrameNumber;
@@ -563,8 +559,6 @@ status_t BufferQueueLayer::setDefaultBufferProperties(uint32_t w, uint32_t h, Pi
        return BAD_VALUE;
        return BAD_VALUE;
    }
    }


    mFormat = format;

    setDefaultBufferSize(w, h);
    setDefaultBufferSize(w, h);
    mConsumer->setDefaultBufferFormat(format);
    mConsumer->setDefaultBufferFormat(format);
    mConsumer->setConsumerUsageBits(getEffectiveUsage(0));
    mConsumer->setConsumerUsageBits(getEffectiveUsage(0));
+0 −3
Original line number Original line Diff line number Diff line
@@ -75,7 +75,6 @@ private:
    Region getDrawingSurfaceDamage() const override;
    Region getDrawingSurfaceDamage() const override;
    const HdrMetadata& getDrawingHdrMetadata() const override;
    const HdrMetadata& getDrawingHdrMetadata() const override;
    int getDrawingApi() const override;
    int getDrawingApi() const override;
    PixelFormat getPixelFormat() const override;


    uint64_t getFrameNumber() const override;
    uint64_t getFrameNumber() const override;


@@ -119,8 +118,6 @@ private:
    sp<BufferLayerConsumer> mConsumer;
    sp<BufferLayerConsumer> mConsumer;
    sp<IGraphicBufferProducer> mProducer;
    sp<IGraphicBufferProducer> mProducer;


    PixelFormat mFormat{PIXEL_FORMAT_NONE};

    // Only accessed on the main thread.
    // Only accessed on the main thread.
    uint64_t mPreviousFrameNumber{0};
    uint64_t mPreviousFrameNumber{0};
    bool mUpdateTexImageFailed{false};
    bool mUpdateTexImageFailed{false};
+0 −7
Original line number Original line Diff line number Diff line
@@ -449,13 +449,6 @@ int BufferStateLayer::getDrawingApi() const {
    return getDrawingState().api;
    return getDrawingState().api;
}
}


PixelFormat BufferStateLayer::getPixelFormat() const {
    if (!mActiveBuffer) {
        return PIXEL_FORMAT_NONE;
    }
    return mActiveBuffer->format;
}

uint64_t BufferStateLayer::getFrameNumber() const {
uint64_t BufferStateLayer::getFrameNumber() const {
    return mFrameNumber;
    return mFrameNumber;
}
}
Loading