diff options
| author | 2015-09-23 15:53:52 +0000 | |
|---|---|---|
| committer | 2015-09-23 15:53:52 +0000 | |
| commit | bf5d95da0d3e4a90fd9b4f705ed697714b28f0a8 (patch) | |
| tree | 332f94f70be3001b2701362b221f5788093bea44 | |
| parent | f387b2839926890f75eff7872c609f4040ffc1f6 (diff) | |
| parent | 72ae6e044452b621897def0d2461cc4a9660b6f7 (diff) | |
Merge "Eliminate bad type parameterization."
| -rw-r--r-- | packages/DocumentsUI/src/com/android/documentsui/MultiSelectManager.java | 59 |
1 files changed, 33 insertions, 26 deletions
diff --git a/packages/DocumentsUI/src/com/android/documentsui/MultiSelectManager.java b/packages/DocumentsUI/src/com/android/documentsui/MultiSelectManager.java index 5930056f111c..583994351a0c 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/MultiSelectManager.java +++ b/packages/DocumentsUI/src/com/android/documentsui/MultiSelectManager.java @@ -45,6 +45,8 @@ import android.view.View; import com.android.documentsui.Events.InputEvent; import com.android.documentsui.Events.MotionInputEvent; +import com.google.android.collect.Lists; + import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -113,8 +115,11 @@ public final class MultiSelectManager { } }; - CompositeOnGestureListener<? extends Object> compositeListener = - new CompositeOnGestureListener<>(listener, gestureDelegate); + CompositeOnGestureListener compositeListener = + new CompositeOnGestureListener( + Lists.<OnGestureListener>newArrayList(listener, gestureDelegate), + Lists.<OnDoubleTapListener>newArrayList(listener, gestureDelegate)); + final GestureDetector detector = new GestureDetector(recyclerView.getContext(), compositeListener); @@ -1060,21 +1065,23 @@ public final class MultiSelectManager { * @template A gestureDelegate that implements both {@link OnGestureListener} * and {@link OnDoubleTapListener} */ - private static final class - CompositeOnGestureListener<L extends OnGestureListener & OnDoubleTapListener> + private static final class CompositeOnGestureListener implements OnGestureListener, OnDoubleTapListener { - private L[] mListeners; + private List<OnGestureListener> mGestureListeners; + private List<OnDoubleTapListener> mTapListeners; - @SafeVarargs - public CompositeOnGestureListener(L... listeners) { - mListeners = listeners; + public CompositeOnGestureListener( + List<OnGestureListener> gestureListeners, + List<OnDoubleTapListener> tapListeners) { + mGestureListeners = gestureListeners; + mTapListeners = tapListeners; } @Override public boolean onDown(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onDown(e)) { + for (OnGestureListener l : mGestureListeners) { + if (l.onDown(e)) { return true; } } @@ -1083,15 +1090,15 @@ public final class MultiSelectManager { @Override public void onShowPress(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - mListeners[i].onShowPress(e); + for (OnGestureListener l : mGestureListeners) { + l.onShowPress(e); } } @Override public boolean onSingleTapUp(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onSingleTapUp(e)) { + for (OnGestureListener l : mGestureListeners) { + if (l.onSingleTapUp(e)) { return true; } } @@ -1100,8 +1107,8 @@ public final class MultiSelectManager { @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onScroll(e1, e2, distanceX, distanceY)) { + for (OnGestureListener l : mGestureListeners) { + if (l.onScroll(e1, e2, distanceX, distanceY)) { return true; } } @@ -1110,15 +1117,15 @@ public final class MultiSelectManager { @Override public void onLongPress(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - mListeners[i].onLongPress(e); + for (OnGestureListener l : mGestureListeners) { + l.onLongPress(e); } } @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onFling(e1, e2, velocityX, velocityY)) { + for (OnGestureListener l : mGestureListeners) { + if (l.onFling(e1, e2, velocityX, velocityY)) { return true; } } @@ -1127,8 +1134,8 @@ public final class MultiSelectManager { @Override public boolean onSingleTapConfirmed(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onSingleTapConfirmed(e)) { + for (OnDoubleTapListener listener : mTapListeners) { + if (listener.onSingleTapConfirmed(e)) { return true; } } @@ -1137,8 +1144,8 @@ public final class MultiSelectManager { @Override public boolean onDoubleTap(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onDoubleTap(e)) { + for (OnDoubleTapListener listener : mTapListeners) { + if (listener.onDoubleTap(e)) { return true; } } @@ -1147,8 +1154,8 @@ public final class MultiSelectManager { @Override public boolean onDoubleTapEvent(MotionEvent e) { - for (int i = 0; i < mListeners.length; i++) { - if (mListeners[i].onDoubleTapEvent(e)) { + for (OnDoubleTapListener listener : mTapListeners) { + if (listener.onDoubleTapEvent(e)) { return true; } } |