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

Commit f2f827c5 authored by Siarhei Vishniakou's avatar Siarhei Vishniakou
Browse files

Make InputDispatcher logs available dynamically

This will allow us to turn on these logs without having to rebuild and
make it easier to debug.

Bug: 211915757
Test: adb shell setprop log.tag.InputDispatcherFocus DEBUG
Test: check that the logs get enabled
Change-Id: Ie1b1445e52b71c373933d085367d74bf568b5462
parent 03272910
Loading
Loading
Loading
Loading
+62 −20
Original line number Diff line number Diff line
@@ -66,35 +66,77 @@ namespace android::inputdispatcher {

namespace {

// Log detailed debug messages about each inbound event notification to the dispatcher.
constexpr bool DEBUG_INBOUND_EVENT_DETAILS = false;
/**
 * Log detailed debug messages about each inbound event notification to the dispatcher.
 * Enable this via "adb shell setprop log.tag.InputDispatcherInboundEvent DEBUG" (requires restart)
 */
const bool DEBUG_INBOUND_EVENT_DETAILS =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "InboundEvent", ANDROID_LOG_INFO);

// Log detailed debug messages about each outbound event processed by the dispatcher.
constexpr bool DEBUG_OUTBOUND_EVENT_DETAILS = false;
/**
 * Log detailed debug messages about each outbound event processed by the dispatcher.
 * Enable this via "adb shell setprop log.tag.InputDispatcherOutboundEvent DEBUG" (requires restart)
 */
const bool DEBUG_OUTBOUND_EVENT_DETAILS =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "OutboundEvent", ANDROID_LOG_INFO);

// Log debug messages about the dispatch cycle.
constexpr bool DEBUG_DISPATCH_CYCLE = false;
/**
 * Log debug messages about the dispatch cycle.
 * Enable this via "adb shell setprop log.tag.InputDispatcherDispatchCycle DEBUG" (requires restart)
 */
const bool DEBUG_DISPATCH_CYCLE =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "DispatchCycle", ANDROID_LOG_INFO);

// Log debug messages about channel creation
constexpr bool DEBUG_CHANNEL_CREATION = false;
/**
 * Log debug messages about channel creation
 * Enable this via "adb shell setprop log.tag.InputDispatcherChannelCreation DEBUG" (requires
 * restart)
 */
const bool DEBUG_CHANNEL_CREATION =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "ChannelCreation", ANDROID_LOG_INFO);

// Log debug messages about input event injection.
constexpr bool DEBUG_INJECTION = false;
/**
 * Log debug messages about input event injection.
 * Enable this via "adb shell setprop log.tag.InputDispatcherInjection DEBUG" (requires restart)
 */
const bool DEBUG_INJECTION =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "Injection", ANDROID_LOG_INFO);

// Log debug messages about input focus tracking.
constexpr bool DEBUG_FOCUS = false;
/**
 * Log debug messages about input focus tracking.
 * Enable this via "adb shell setprop log.tag.InputDispatcherFocus DEBUG" (requires restart)
 */
const bool DEBUG_FOCUS =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "Focus", ANDROID_LOG_INFO);

// Log debug messages about touch mode event
constexpr bool DEBUG_TOUCH_MODE = false;
/**
 * Log debug messages about touch mode event
 * Enable this via "adb shell setprop log.tag.InputDispatcherTouchMode DEBUG" (requires restart)
 */
const bool DEBUG_TOUCH_MODE =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "TouchMode", ANDROID_LOG_INFO);

// Log debug messages about touch occlusion
constexpr bool DEBUG_TOUCH_OCCLUSION = true;
/**
 * Log debug messages about touch occlusion
 * Enable this via "adb shell setprop log.tag.InputDispatcherTouchOcclusion DEBUG" (requires
 * restart)
 */
const bool DEBUG_TOUCH_OCCLUSION =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "TouchOcclusion", ANDROID_LOG_INFO);

// Log debug messages about the app switch latency optimization.
constexpr bool DEBUG_APP_SWITCH = false;
/**
 * Log debug messages about the app switch latency optimization.
 * Enable this via "adb shell setprop log.tag.InputDispatcherAppSwitch DEBUG" (requires restart)
 */
const bool DEBUG_APP_SWITCH =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "AppSwitch", ANDROID_LOG_INFO);

// Log debug messages about hover events.
constexpr bool DEBUG_HOVER = false;
/**
 * Log debug messages about hover events.
 * Enable this via "adb shell setprop log.tag.InputDispatcherHover DEBUG" (requires restart)
 */
const bool DEBUG_HOVER =
        __android_log_is_loggable(ANDROID_LOG_DEBUG, LOG_TAG "Hover", ANDROID_LOG_INFO);

// Temporarily releases a held mutex for the lifetime of the instance.
// Named to match std::scoped_lock