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

Commit 8363faef authored by Marin Shalamanov's avatar Marin Shalamanov Committed by Android (Google) Code Review
Browse files

Merge "Use type safe display IDs."

parents 330b64fc 11599eea
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -417,7 +417,7 @@ status_t BootAnimation::readyToRun() {
    // this guest property specifies multi-display IDs to show the boot animation
    // multiple ids can be set with comma (,) as separator, for example:
    // setprop persist.boot.animation.displays 19260422155234049,19261083906282754
    Vector<uint64_t> physicalDisplayIds;
    Vector<PhysicalDisplayId> physicalDisplayIds;
    char displayValue[PROPERTY_VALUE_MAX] = "";
    property_get(DISPLAYS_PROP_NAME, displayValue, "");
    bool isValid = displayValue[0] != '\0';
@@ -435,7 +435,7 @@ status_t BootAnimation::readyToRun() {
    }
    if (isValid) {
        std::istringstream stream(displayValue);
        for (PhysicalDisplayId id; stream >> id; ) {
        for (PhysicalDisplayId id; stream >> id.value; ) {
            physicalDisplayIds.add(id);
            if (stream.peek() == ',')
                stream.ignore();
+4 −5
Original line number Diff line number Diff line
@@ -51,12 +51,11 @@ static void usage(const char* pname, PhysicalDisplayId displayId)
            "usage: %s [-hp] [-d display-id] [FILENAME]\n"
            "   -h: this message\n"
            "   -p: save the file as a png.\n"
            "   -d: specify the physical display ID to capture (default: %"
                    ANDROID_PHYSICAL_DISPLAY_ID_FORMAT ")\n"
            "   -d: specify the physical display ID to capture (default: %s)\n"
            "       see \"dumpsys SurfaceFlinger --display-id\" for valid display IDs.\n"
            "If FILENAME ends with .png it will be saved as a png.\n"
            "If FILENAME is not given, the results will be printed to stdout.\n",
            pname, displayId);
            pname, to_string(displayId).c_str());
}

static int32_t flinger2bitmapFormat(PixelFormat f)
@@ -137,7 +136,7 @@ int main(int argc, char** argv)
                png = true;
                break;
            case 'd':
                displayId = atoll(optarg);
                displayId = PhysicalDisplayId(atoll(optarg));
                break;
            case '?':
            case 'h':
@@ -183,7 +182,7 @@ int main(int argc, char** argv)
    ProcessState::self()->startThreadPool();

    ScreenCaptureResults captureResults;
    status_t result = ScreenshotClient::captureDisplay(*displayId, captureResults);
    status_t result = ScreenshotClient::captureDisplay(displayId->value, captureResults);
    if (result != NO_ERROR) {
        close(fd);
        return 1;
+6 −7
Original line number Diff line number Diff line
@@ -95,8 +95,8 @@ void NativeDisplayEventReceiver::dispatchVsync(nsecs_t timestamp, PhysicalDispla
    ScopedLocalRef<jobject> receiverObj(env, jniGetReferent(env, mReceiverWeakGlobal));
    if (receiverObj.get()) {
        ALOGV("receiver %p ~ Invoking vsync handler.", this);
        env->CallVoidMethod(receiverObj.get(),
                gDisplayEventReceiverClassInfo.dispatchVsync, timestamp, displayId, count);
        env->CallVoidMethod(receiverObj.get(), gDisplayEventReceiverClassInfo.dispatchVsync,
                            timestamp, displayId.value, count);
        ALOGV("receiver %p ~ Returned from vsync handler.", this);
    }

@@ -110,8 +110,8 @@ void NativeDisplayEventReceiver::dispatchHotplug(nsecs_t timestamp, PhysicalDisp
    ScopedLocalRef<jobject> receiverObj(env, jniGetReferent(env, mReceiverWeakGlobal));
    if (receiverObj.get()) {
        ALOGV("receiver %p ~ Invoking hotplug handler.", this);
        env->CallVoidMethod(receiverObj.get(),
                gDisplayEventReceiverClassInfo.dispatchHotplug, timestamp, displayId, connected);
        env->CallVoidMethod(receiverObj.get(), gDisplayEventReceiverClassInfo.dispatchHotplug,
                            timestamp, displayId.value, connected);
        ALOGV("receiver %p ~ Returned from hotplug handler.", this);
    }

@@ -126,9 +126,8 @@ void NativeDisplayEventReceiver::dispatchConfigChanged(
                                      jniGetReferent(env, mReceiverWeakGlobal));
  if (receiverObj.get()) {
    ALOGV("receiver %p ~ Invoking config changed handler.", this);
    env->CallVoidMethod(receiverObj.get(),
                        gDisplayEventReceiverClassInfo.dispatchConfigChanged,
                        timestamp, displayId, configId);
    env->CallVoidMethod(receiverObj.get(), gDisplayEventReceiverClassInfo.dispatchConfigChanged,
                        timestamp, displayId.value, configId);
    ALOGV("receiver %p ~ Returned from config changed handler.", this);
  }

+3 −2
Original line number Diff line number Diff line
@@ -703,7 +703,7 @@ static jlongArray nativeGetPhysicalDisplayIds(JNIEnv* env, jclass clazz) {

    jlong* values = env->GetLongArrayElements(array, 0);
    for (size_t i = 0; i < displayIds.size(); ++i) {
        values[i] = static_cast<jlong>(displayIds[i]);
        values[i] = static_cast<jlong>(displayIds[i].value);
    }

    env->ReleaseLongArrayElements(array, values, 0);
@@ -711,7 +711,8 @@ static jlongArray nativeGetPhysicalDisplayIds(JNIEnv* env, jclass clazz) {
}

static jobject nativeGetPhysicalDisplayToken(JNIEnv* env, jclass clazz, jlong physicalDisplayId) {
    sp<IBinder> token = SurfaceComposerClient::getPhysicalDisplayToken(physicalDisplayId);
    sp<IBinder> token =
            SurfaceComposerClient::getPhysicalDisplayToken(PhysicalDisplayId(physicalDisplayId));
    return javaObjectForIBinder(env, token);
}