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

Commit ed310a92 authored by android-build-team Robot's avatar android-build-team Robot
Browse files

Snap for 4696032 from 2e14fbae to pi-release

Change-Id: I162f579df75dffcfb1284ec0096a52296ed11602
parents 70d85f40 2e14fbae
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -984,7 +984,8 @@ status_t GLConsumer::doGLFenceWaitLocked() const {
    }

    if (mCurrentFence->isValid()) {
        if (SyncFeatures::getInstance().useWaitSync()) {
        if (SyncFeatures::getInstance().useWaitSync() &&
            SyncFeatures::getInstance().useNativeFenceSync()) {
            // Create an EGLSyncKHR from the current fence.
            int fenceFd = mCurrentFence->dup();
            if (fenceFd == -1) {
+8 −7
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@
namespace android {

using ui::ColorMode;
using ui::Dataspace;

Surface::Surface(const sp<IGraphicBufferProducer>& bufferProducer, bool controlledByApp)
      : mGraphicBufferProducer(bufferProducer),
@@ -80,7 +81,7 @@ Surface::Surface(const sp<IGraphicBufferProducer>& bufferProducer, bool controll
    mReqFormat = 0;
    mReqUsage = 0;
    mTimestamp = NATIVE_WINDOW_TIMESTAMP_AUTO;
    mDataSpace = HAL_DATASPACE_UNKNOWN;
    mDataSpace = Dataspace::UNKNOWN;
    mScalingMode = NATIVE_WINDOW_SCALING_MODE_FREEZE;
    mTransform = 0;
    mStickyTransform = 0;
@@ -666,8 +667,9 @@ int Surface::queueBuffer(android_native_buffer_t* buffer, int fenceFd) {
    sp<Fence> fence(fenceFd >= 0 ? new Fence(fenceFd) : Fence::NO_FENCE);
    IGraphicBufferProducer::QueueBufferOutput output;
    IGraphicBufferProducer::QueueBufferInput input(timestamp, isAutoTimestamp,
            mDataSpace, crop, mScalingMode, mTransform ^ mStickyTransform,
            fence, mStickyTransform, mEnableFrameTimestamps);
            static_cast<android_dataspace>(mDataSpace), crop, mScalingMode,
            mTransform ^ mStickyTransform, fence, mStickyTransform,
            mEnableFrameTimestamps);

    // we should send HDR metadata as needed if this becomes a bottleneck
    input.setHdrMetadata(mHdrMetadata);
@@ -1098,8 +1100,7 @@ int Surface::dispatchSetSidebandStream(va_list args) {
}

int Surface::dispatchSetBuffersDataSpace(va_list args) {
    android_dataspace dataspace =
            static_cast<android_dataspace>(va_arg(args, int));
    Dataspace dataspace = static_cast<Dataspace>(va_arg(args, int));
    return setBuffersDataSpace(dataspace);
}

@@ -1531,7 +1532,7 @@ int Surface::setBuffersTimestamp(int64_t timestamp)
    return NO_ERROR;
}

int Surface::setBuffersDataSpace(android_dataspace dataSpace)
int Surface::setBuffersDataSpace(Dataspace dataSpace)
{
    ALOGV("Surface::setBuffersDataSpace");
    Mutex::Autolock lock(mMutex);
@@ -1563,7 +1564,7 @@ int Surface::setBuffersCta8613Metadata(const android_cta861_3_metadata* metadata
    return NO_ERROR;
}

android_dataspace_t Surface::getBuffersDataSpace() {
Dataspace Surface::getBuffersDataSpace() {
    ALOGV("Surface::getBuffersDataSpace");
    Mutex::Autolock lock(mMutex);
    return mDataSpace;
+5 −4
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
#include <gui/IGraphicBufferProducer.h>

#include <ui/ANativeObjectBase.h>
#include <ui/GraphicTypes.h>
#include <ui/Region.h>

#include <utils/Condition.h>
@@ -245,7 +246,7 @@ protected:
    virtual int setBuffersTransform(uint32_t transform);
    virtual int setBuffersStickyTransform(uint32_t transform);
    virtual int setBuffersTimestamp(int64_t timestamp);
    virtual int setBuffersDataSpace(android_dataspace dataSpace);
    virtual int setBuffersDataSpace(ui::Dataspace dataSpace);
    virtual int setBuffersSmpte2086Metadata(const android_smpte2086_metadata* metadata);
    virtual int setBuffersCta8613Metadata(const android_cta861_3_metadata* metadata);
    virtual int setCrop(Rect const* rect);
@@ -286,7 +287,7 @@ public:
    // detachNextBuffer, or attachBuffer call.
    status_t getAndFlushRemovedBuffers(std::vector<sp<GraphicBuffer>>* out);

    android_dataspace_t getBuffersDataSpace();
    ui::Dataspace getBuffersDataSpace();

    static status_t attachAndQueueBuffer(Surface* surface, sp<GraphicBuffer> buffer);

@@ -340,9 +341,9 @@ protected:
    int64_t mTimestamp;

    // mDataSpace is the buffer dataSpace that will be used for the next buffer
    // queue operation. It defaults to HAL_DATASPACE_UNKNOWN, which
    // queue operation. It defaults to Dataspace::UNKNOWN, which
    // means that the buffer contains some type of color data.
    android_dataspace mDataSpace;
    ui::Dataspace mDataSpace;

    // mHdrMetadata is the HDR metadata that will be used for the next buffer
    // queue operation.  There is no HDR metadata by default.
+8 −2
Original line number Diff line number Diff line
@@ -83,6 +83,7 @@ cc_library_shared {
        "libhidlbase",
        "libhidltransport",
        "libhwbinder",
        "libpdx_default_transport",
        "libsync",
        "libutils",
        "libutilscallstack",
@@ -99,10 +100,9 @@ cc_library_shared {
        "libbase_headers",
        "libnativebase_headers",
        "libhardware_headers",
        "libui_headers",
    ],

    export_include_dirs: ["include"],

    export_static_lib_headers: [
        "libarect",
        "libmath",
@@ -112,6 +112,7 @@ cc_library_shared {
        "libbase_headers",
        "libnativebase_headers",
        "libhardware_headers",
        "libui_headers",
    ],
}

@@ -119,6 +120,11 @@ cc_library_headers {
    name: "libui_headers",
    export_include_dirs: ["include"],
    vendor_available: true,
    target: {
        vendor: {
            override_export_include_dirs: ["include_vndk"],
        },
    },
}

subdirs = [
+27 −0
Original line number Diff line number Diff line
@@ -234,6 +234,33 @@ std::string decodeColorMode(ColorMode colorMode) {
    return android::base::StringPrintf("Unknown color mode %d", colorMode);
}

std::string decodeColorTransform(android_color_transform colorTransform) {
    switch (colorTransform) {
        case HAL_COLOR_TRANSFORM_IDENTITY:
            return std::string("Identity");

        case HAL_COLOR_TRANSFORM_ARBITRARY_MATRIX:
            return std::string("Arbitrary matrix");

        case HAL_COLOR_TRANSFORM_VALUE_INVERSE:
            return std::string("Inverse value");

        case HAL_COLOR_TRANSFORM_GRAYSCALE:
            return std::string("Grayscale");

        case HAL_COLOR_TRANSFORM_CORRECT_PROTANOPIA:
            return std::string("Correct protanopia");

        case HAL_COLOR_TRANSFORM_CORRECT_DEUTERANOPIA:
            return std::string("Correct deuteranopia");

        case HAL_COLOR_TRANSFORM_CORRECT_TRITANOPIA:
            return std::string("Correct tritanopia");
    }

    return android::base::StringPrintf("Unknown color transform %d", colorTransform);
}

// Converts a PixelFormat to a human-readable string.  Max 11 chars.
// (Could use a table of prefab String8 objects.)
std::string decodePixelFormat(android::PixelFormat format) {
Loading