From 33f3e5fca09e1f44bbf5cd7fd86708be858448fb Mon Sep 17 00:00:00 2001 From: olly Date: Fri, 16 Apr 2021 12:07:03 +0100 Subject: [PATCH] Make surfaceView non-clickable PiperOrigin-RevId: 368818853 --- .../java/com/google/android/exoplayer2/ui/PlayerView.java | 4 ++++ .../com/google/android/exoplayer2/ui/StyledPlayerView.java | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java index d9bb5dc955..85bbc4d38d 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java @@ -436,7 +436,11 @@ public class PlayerView extends FrameLayout implements AdViewProvider { break; } surfaceView.setLayoutParams(params); + // We don't want surfaceView to be clickable separately to the PlayerView itself, but we do + // want to register as an OnClickListener so that surfaceView implementations can propagate + // click events up to the PlayerView by calling their own performClick method. surfaceView.setOnClickListener(componentListener); + surfaceView.setClickable(false); contentFrame.addView(surfaceView, 0); } else { surfaceView = null; diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java index 779cea7e0f..0eb9b40286 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/StyledPlayerView.java @@ -443,7 +443,11 @@ public class StyledPlayerView extends FrameLayout implements AdViewProvider { break; } surfaceView.setLayoutParams(params); + // We don't want surfaceView to be clickable separately to the StyledPlayerView itself, but we + // do want to register as an OnClickListener so that surfaceView implementations can propagate + // click events up to the StyledPlayerView by calling their own performClick method. surfaceView.setOnClickListener(componentListener); + surfaceView.setClickable(false); contentFrame.addView(surfaceView, 0); } else { surfaceView = null;