package androidx.recyclerview.selection { public abstract class BandPredicate { ctor public BandPredicate(); method public abstract boolean canInitiate(android.view.MotionEvent); } public static final class BandPredicate.EmptyArea extends androidx.recyclerview.selection.BandPredicate { ctor public BandPredicate.EmptyArea(androidx.recyclerview.widget.RecyclerView); method public boolean canInitiate(android.view.MotionEvent); } public static final class BandPredicate.NonDraggableArea extends androidx.recyclerview.selection.BandPredicate { ctor public BandPredicate.NonDraggableArea(androidx.recyclerview.widget.RecyclerView, androidx.recyclerview.selection.ItemDetailsLookup); method public boolean canInitiate(android.view.MotionEvent); } public abstract class FocusDelegate<K> { ctor public FocusDelegate(); method public abstract void clearFocus(); method public abstract void focusItem(androidx.recyclerview.selection.ItemDetailsLookup.ItemDetails<K>); method public abstract int getFocusedPosition(); method public abstract boolean hasFocusedItem(); } public abstract class ItemDetailsLookup<K> { ctor public ItemDetailsLookup(); method public abstract androidx.recyclerview.selection.ItemDetailsLookup.ItemDetails<K> getItemDetails(android.view.MotionEvent); } public static abstract class ItemDetailsLookup.ItemDetails<K> { ctor public ItemDetailsLookup.ItemDetails(); method public abstract int getPosition(); method public abstract K getSelectionKey(); method public boolean hasSelectionKey(); method public boolean inDragRegion(android.view.MotionEvent); method public boolean inSelectionHotspot(android.view.MotionEvent); } public abstract class ItemKeyProvider<K> { ctor protected ItemKeyProvider(int); method public abstract K getKey(int); method public abstract int getPosition(K); field public static final int SCOPE_CACHED = 1; // 0x1 field public static final int SCOPE_MAPPED = 0; // 0x0 } public static abstract class ItemKeyProvider.Scope implements java.lang.annotation.Annotation { } public final class MutableSelection<K> extends androidx.recyclerview.selection.Selection { ctor public MutableSelection(); method public boolean add(K); method public void clear(); method public void copyFrom(androidx.recyclerview.selection.Selection<K>); method public boolean remove(K); } public abstract interface OnContextClickListener { method public abstract boolean onContextClick(android.view.MotionEvent); } public abstract interface OnDragInitiatedListener { method public abstract boolean onDragInitiated(android.view.MotionEvent); } public abstract interface OnItemActivatedListener<K> { method public abstract boolean onItemActivated(androidx.recyclerview.selection.ItemDetailsLookup.ItemDetails<K>, android.view.MotionEvent); } public final class OperationMonitor { ctor public OperationMonitor(); method public void addListener(androidx.recyclerview.selection.OperationMonitor.OnChangeListener); method public synchronized boolean isStarted(); method public void removeListener(androidx.recyclerview.selection.OperationMonitor.OnChangeListener); } public static abstract interface OperationMonitor.OnChangeListener { method public abstract void onChanged(); } public class Selection<K> implements java.lang.Iterable { method public boolean contains(K); method public boolean isEmpty(); method public java.util.Iterator<K> iterator(); method public int size(); } public final class SelectionPredicates { method public static <K> androidx.recyclerview.selection.SelectionTracker.SelectionPredicate<K> createSelectAnything(); method public static <K> androidx.recyclerview.selection.SelectionTracker.SelectionPredicate<K> createSelectSingleAnything(); } public abstract class SelectionTracker<K> { ctor public SelectionTracker(); method public abstract void addObserver(androidx.recyclerview.selection.SelectionTracker.SelectionObserver); method public abstract boolean clearSelection(); method public abstract void copySelection(androidx.recyclerview.selection.MutableSelection<K>); method public abstract boolean deselect(K); method public abstract androidx.recyclerview.selection.Selection<K> getSelection(); method public abstract boolean hasSelection(); method public abstract boolean isSelected(K); method public abstract void onRestoreInstanceState(android.os.Bundle); method public abstract void onSaveInstanceState(android.os.Bundle); method protected abstract void restoreSelection(androidx.recyclerview.selection.Selection<K>); method public abstract boolean select(K); method public abstract boolean setItemsSelected(java.lang.Iterable<K>, boolean); field public static final java.lang.String SELECTION_CHANGED_MARKER = "Selection-Changed"; } public static final class SelectionTracker.Builder<K> { ctor public SelectionTracker.Builder(java.lang.String, androidx.recyclerview.widget.RecyclerView, androidx.recyclerview.selection.ItemKeyProvider<K>, androidx.recyclerview.selection.ItemDetailsLookup<K>, androidx.recyclerview.selection.StorageStrategy<K>); method public androidx.recyclerview.selection.SelectionTracker<K> build(); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withBandOverlay(int); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withBandPredicate(androidx.recyclerview.selection.BandPredicate); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withFocusDelegate(androidx.recyclerview.selection.FocusDelegate<K>); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withGestureTooltypes(int...); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withOnContextClickListener(androidx.recyclerview.selection.OnContextClickListener); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withOnDragInitiatedListener(androidx.recyclerview.selection.OnDragInitiatedListener); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withOnItemActivatedListener(androidx.recyclerview.selection.OnItemActivatedListener<K>); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withOperationMonitor(androidx.recyclerview.selection.OperationMonitor); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withPointerTooltypes(int...); method public androidx.recyclerview.selection.SelectionTracker.Builder<K> withSelectionPredicate(androidx.recyclerview.selection.SelectionTracker.SelectionPredicate<K>); } public static abstract class SelectionTracker.SelectionObserver<K> { ctor public SelectionTracker.SelectionObserver(); method public void onItemStateChanged(K, boolean); method public void onSelectionChanged(); method public void onSelectionRefresh(); method public void onSelectionRestored(); } public static abstract class SelectionTracker.SelectionPredicate<K> { ctor public SelectionTracker.SelectionPredicate(); method public abstract boolean canSelectMultiple(); method public abstract boolean canSetStateAtPosition(int, boolean); method public abstract boolean canSetStateForKey(K, boolean); } public final class StableIdKeyProvider extends androidx.recyclerview.selection.ItemKeyProvider { ctor public StableIdKeyProvider(androidx.recyclerview.widget.RecyclerView); method public java.lang.Long getKey(int); method public int getPosition(java.lang.Long); } public abstract class StorageStrategy<K> { ctor public StorageStrategy(java.lang.Class<K>); method public abstract android.os.Bundle asBundle(androidx.recyclerview.selection.Selection<K>); method public abstract androidx.recyclerview.selection.Selection<K> asSelection(android.os.Bundle); method public static androidx.recyclerview.selection.StorageStrategy<java.lang.Long> createLongStorage(); method public static <K extends android.os.Parcelable> androidx.recyclerview.selection.StorageStrategy<K> createParcelableStorage(java.lang.Class<K>); method public static androidx.recyclerview.selection.StorageStrategy<java.lang.String> createStringStorage(); } }