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

Commit e579b0d6 authored by Manasi Navare's avatar Manasi Navare Committed by Android (Google) Code Review
Browse files

Merge changes from topic "display_err_handling_bug_fixes" into main

* changes:
  Use Display Events from DisplayEventType Enum class
  Add dispatchModeRejected exception in NativeDisplayReceiver
parents 65296d7c 1e4d6e07
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -441,7 +441,7 @@ public:
            numEvents = mBootAnimation->mDisplayEventReceiver->getEvents(buffer, kBufferSize);
            for (size_t i = 0; i < static_cast<size_t>(numEvents); i++) {
                const auto& event = buffer[i];
                if (event.header.type == DisplayEventReceiver::DISPLAY_EVENT_HOTPLUG) {
                if (event.header.type == DisplayEventType::DISPLAY_EVENT_HOTPLUG) {
                    SLOGV("Hotplug received");

                    if (!event.hotplug.connected) {
+3 −1
Original line number Diff line number Diff line
@@ -284,6 +284,8 @@ void NativeDisplayEventReceiver::dispatchModeRejected(PhysicalDisplayId displayI
                            displayId.value, modeId);
        ALOGV("receiver %p ~ Returned from Mode Rejected handler.", this);
    }

    mMessageQueue->raiseAndClearException(env, "dispatchModeRejected");
}

void NativeDisplayEventReceiver::dispatchFrameRateOverrides(
@@ -314,7 +316,7 @@ void NativeDisplayEventReceiver::dispatchFrameRateOverrides(
        ALOGV("receiver %p ~ Returned from FrameRateOverride handler.", this);
    }

    mMessageQueue->raiseAndClearException(env, "dispatchModeChanged");
    mMessageQueue->raiseAndClearException(env, "dispatchFrameRateOverrides");
}

void NativeDisplayEventReceiver::dispatchHdcpLevelsChanged(PhysicalDisplayId displayId,
+2 −1
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
 */

#include "PointerControllerContext.h"

#include "PointerController.h"

namespace {
@@ -184,7 +185,7 @@ void PointerControllerContext::PointerAnimator::handleVsyncEvents() {
    DisplayEventReceiver::Event buf[EVENT_BUFFER_SIZE];
    while ((n = mDisplayEventReceiver.getEvents(buf, EVENT_BUFFER_SIZE)) > 0) {
        for (size_t i = 0; i < static_cast<size_t>(n); ++i) {
            if (buf[i].header.type == DisplayEventReceiver::DISPLAY_EVENT_VSYNC) {
            if (buf[i].header.type == DisplayEventType::DISPLAY_EVENT_VSYNC) {
                timestamp = buf[i].header.timestamp;
                gotVsync = true;
            }