diff --git a/app/src/main/java/com/limelight/binding/input/capture/InputCaptureManager.java b/app/src/main/java/com/limelight/binding/input/capture/InputCaptureManager.java index 809fccfc..d88eb5a7 100644 --- a/app/src/main/java/com/limelight/binding/input/capture/InputCaptureManager.java +++ b/app/src/main/java/com/limelight/binding/input/capture/InputCaptureManager.java @@ -3,6 +3,7 @@ package com.limelight.binding.input.capture; import android.app.Activity; import com.limelight.LimeLog; +import com.limelight.LimelightBuildProps; import com.limelight.R; import com.limelight.binding.input.evdev.EvdevCaptureProviderShim; import com.limelight.binding.input.evdev.EvdevListener; @@ -13,7 +14,9 @@ public class InputCaptureManager { LimeLog.info("Using Android O+ native mouse capture"); return new AndroidNativePointerCaptureProvider(activity.findViewById(R.id.surfaceView)); } - else if (ShieldCaptureProvider.isCaptureProviderSupported()) { + // LineageOS implemented broken NVIDIA capture extensions, so avoid using them on root builds. + // See https://github.com/LineageOS/android_frameworks_base/commit/d304f478a023430f4712dbdc3ee69d9ad02cebd3 + else if (!LimelightBuildProps.ROOT_BUILD && ShieldCaptureProvider.isCaptureProviderSupported()) { LimeLog.info("Using NVIDIA mouse capture extension"); return new ShieldCaptureProvider(activity); }