/** Callback when each frame in the peek drawer animation should be drawn. */ @SuppressLint("NewApi") private void peekDrawerInvalidate() { if (mPeekScroller.computeScrollOffset()) { final int oldX = (int) mOffsetPixels; final int x = mPeekScroller.getCurrX(); if (x != oldX) { setOffsetPixels(x); } if (!mPeekScroller.isFinished()) { postOnAnimation(mPeekRunnable); return; } else if (mPeekDelay > 0) { mPeekStartRunnable = new Runnable() { @Override public void run() { startPeek(); } }; postDelayed(mPeekStartRunnable, mPeekDelay); } } completePeek(); }
/** Callback when each frame in the drawer animation should be drawn. */ private void postAnimationInvalidate() { if (mScroller.computeScrollOffset(false)) { final int oldX = (int) mOffsetPixels; final int x = mScroller.getCurrX(); if (x != oldX) setOffsetPixels(x); if (x != mScroller.getFinalX()) { postOnAnimation(mDragRunnable); return; } } completeAnimation(); }
/** Callback when each frame in the peek drawer animation should be drawn. */ private void peekDrawerInvalidate() { boolean holdPeek; if (mPeekDelay < 0) holdPeek = true; else holdPeek = false; if (mPeekScroller.computeScrollOffset(holdPeek)) { final int oldX = (int) mOffsetPixels; final int x = mPeekScroller.getCurrX(); if (x != oldX) setOffsetPixels(x); if (!mPeekScroller.isFinished()) { // Log.e("DraggableDrawer", "mPeekScroller is not finished"); postOnAnimation(mPeekRunnable); return; } else if (mPeekDelay > 0) { // Log.e("DraggableDrawer", "mPeekScroller is finished"); mPeekStartRunnable = new Runnable() { @Override public void run() { startPeek(); } }; if (mPeekDelay >= 0) postDelayed(mPeekStartRunnable, mPeekDelay); // else // postDelayed(mPeekStartRunnable, 1000); } } if (mPeekDelay > 0) completePeek(); }