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

Commit df0a89da authored by JP Abgrall's avatar JP Abgrall
Browse files

services: input events: enable debugging in EventHub (touch screen issues)

Enable verbose logging, but limit the output of events to only those that
are stale by more than 1ms.
This does not overly pollute the logcat output.


Bug: 6258051
Change-Id: I32012a379ca0e97c0834975482cd91f9eeb08907
parent 29bb27ef
Loading
Loading
Loading
Loading
+16 −7
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@

#define LOG_TAG "EventHub"

// #define LOG_NDEBUG 0
#define LOG_NDEBUG 0

#include "EventHub.h"

@@ -767,11 +767,7 @@ size_t EventHub::getEvents(int timeoutMillis, RawEvent* buffer, size_t bufferSiz
                    size_t count = size_t(readSize) / sizeof(struct input_event);
                    for (size_t i = 0; i < count; i++) {
                        const struct input_event& iev = readBuffer[i];
                        ALOGV("%s got: t0=%d, t1=%d, type=%d, code=%d, value=%d",
                                device->path.string(),
                                (int) iev.time.tv_sec, (int) iev.time.tv_usec,
                                iev.type, iev.code, iev.value);

                        nsecs_t delta = 0; 
#ifdef HAVE_POSIX_CLOCKS
                        // Use the time specified in the event instead of the current time
                        // so that downstream code can get more accurate estimates of
@@ -786,10 +782,23 @@ size_t EventHub::getEvents(int timeoutMillis, RawEvent* buffer, size_t bufferSiz
                        // system call that also queries ktime_get_ts().
                        event->when = nsecs_t(iev.time.tv_sec) * 1000000000LL
                                + nsecs_t(iev.time.tv_usec) * 1000LL;
                        ALOGV("event time %lld, now %lld", event->when, now);
                        delta = now - event->when;

                        // Only log verbose if events are older that 1ms
                        if (delta > 1 * 1000000LL) {
                            ALOGV("event time %lld, now %lld, delta %lldus", event->when, now, delta / 1000LL);
                        }
#else
                        event->when = now;
#endif
                        if (delta > 1 * 1000000LL) {
                            ALOGV("%s got: t0=%d, t1=%d, type=%d, code=%d, value=%d",
                                  device->path.string(),
                                  (int) iev.time.tv_sec, (int) iev.time.tv_usec,
                                  iev.type, iev.code, iev.value);
                        }


                        event->deviceId = deviceId;
                        event->type = iev.type;
                        event->code = iev.code;