summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/test-current.txt4
-rw-r--r--core/java/android/widget/AbsListView.java11
2 files changed, 14 insertions, 1 deletions
diff --git a/api/test-current.txt b/api/test-current.txt
index 6941731c29cd..4597945eca16 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -1037,6 +1037,10 @@ package android.view.autofill {
package android.widget {
+ public abstract class AbsListView extends android.widget.AdapterView implements android.widget.Filter.FilterListener android.text.TextWatcher android.view.ViewTreeObserver.OnGlobalLayoutListener android.view.ViewTreeObserver.OnTouchModeChangeListener {
+ method public final boolean shouldDrawSelector();
+ }
+
public class CalendarView extends android.widget.FrameLayout {
method public boolean getBoundsForDate(long, android.graphics.Rect);
}
diff --git a/core/java/android/widget/AbsListView.java b/core/java/android/widget/AbsListView.java
index 6bee58f96f8a..3f0d006e49cf 100644
--- a/core/java/android/widget/AbsListView.java
+++ b/core/java/android/widget/AbsListView.java
@@ -19,6 +19,7 @@ package android.widget;
import android.annotation.ColorInt;
import android.annotation.DrawableRes;
import android.annotation.NonNull;
+import android.annotation.TestApi;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
@@ -2744,7 +2745,7 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
}
private void drawSelector(Canvas canvas) {
- if (!mSelectorRect.isEmpty()) {
+ if (shouldDrawSelector()) {
final Drawable selector = mSelector;
selector.setBounds(mSelectorRect);
selector.draw(canvas);
@@ -2752,6 +2753,14 @@ public abstract class AbsListView extends AdapterView<ListAdapter> implements Te
}
/**
+ * @hide
+ */
+ @TestApi
+ public final boolean shouldDrawSelector() {
+ return !mSelectorRect.isEmpty();
+ }
+
+ /**
* Controls whether the selection highlight drawable should be drawn on top of the item or
* behind it.
*