public void onTouchEvent(MotionEvent event) { mGestrueDetector.onTouchEvent(event); int action = MotionEventCompat.getActionMasked(event); switch (action) { case (MotionEvent.ACTION_UP): // Log.d(DEBUG_TAG, "Action was UP"); if (mStarted) { mListener.onDragEnd(mOriginalEvent, event); } mStarted = false; break; case (MotionEvent.ACTION_DOWN): // need to set this, quick tap will not generate drap event, so the // originalEvent may be null for case action_up // which lead to null pointer mOriginalEvent = event; break; case (MotionEvent.ACTION_CANCEL): Log.d(DEBUG_TAG, "Action was cancel!"); if (mStarted) { mListener.onDragEnd(mOriginalEvent, event); } mStarted = false; break; } }
/** This only gets called as a result of drag view cleanup being deferred in endDrag(); */ void onDeferredEndDrag(DragView dragView) { dragView.remove(); if (mDragObject.deferDragViewCleanupPostAnimation) { // If we skipped calling onDragEnd() before, do it now for (DragListener listener : mListeners) { listener.onDragEnd(); } } }
private void endDrag() { if (mDragging) { mDragging = false; if (mOriginator != null) { mOriginator.setVisibility(View.VISIBLE); } if (mListener != null) { mListener.onDragEnd(); } if (mDragView != null) { mDragView.remove(); mDragView = null; } } }
private void endDrag() { if (mDragging) { mDragging = false; if (mDragBitmap != null) { mDragBitmap.recycle(); } if (mOriginator != null) { mOriginator.setVisibility(VISIBLE); } // Faruq: ArrayList For Each for (DragListener l : mListener) { l.onDragEnd(); } } }
private void endDrag() { if (mDragging) { mDragging = false; if (mOriginator != null && (mOriginator.getContentDescription() == null || !mOriginator.getContentDescription().toString().equalsIgnoreCase("dropped"))) { mOriginator.setVisibility(View.VISIBLE); } if (mListener != null) { mListener.onDragEnd(); } if (mDragView != null) { mDragView.remove(); mDragView = null; } // mOriginator.getParent().recomputeViewAttributes(mOriginator); } }
private void endDrag() { if (mDragging) { mDragging = false; clearScrollRunnable(); boolean isDeferred = false; if (mDragObject.dragView != null) { isDeferred = mDragObject.deferDragViewCleanupPostAnimation; if (!isDeferred) { mDragObject.dragView.remove(); } mDragObject.dragView = null; } // Only end the drag if we are not deferred if (!isDeferred) { for (DragListener listener : mListeners) { listener.onDragEnd(); } } } releaseVelocityTracker(); }