Loading core/java/android/widget/SlidingDrawer.java +16 −17 Original line number Diff line number Diff line Loading @@ -22,8 +22,6 @@ import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Rect; import android.os.Handler; import android.os.Message; import android.os.SystemClock; import android.util.AttributeSet; import android.view.MotionEvent; Loading Loading @@ -475,19 +473,19 @@ public class SlidingDrawer extends ViewGroup { playSoundEffect(SoundEffectConstants.CLICK); if (mExpanded) { animateClose(vertical ? top : left); animateClose(vertical ? top : left, true); } else { animateOpen(vertical ? top : left); animateOpen(vertical ? top : left, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } break; Loading @@ -497,17 +495,18 @@ public class SlidingDrawer extends ViewGroup { return mTracking || mAnimating || super.onTouchEvent(event); } private void animateClose(int position) { private void animateClose(int position, boolean notifyScrollListener) { prepareTracking(position); performFling(position, mMaximumAcceleration, true); performFling(position, mMaximumAcceleration, true, notifyScrollListener); } private void animateOpen(int position) { private void animateOpen(int position, boolean notifyScrollListener) { prepareTracking(position); performFling(position, -mMaximumAcceleration, true); performFling(position, -mMaximumAcceleration, true, notifyScrollListener); } private void performFling(int position, float velocity, boolean always) { private void performFling(int position, float velocity, boolean always, boolean notifyScrollListener) { mAnimationPosition = position; mAnimatedVelocity = velocity; Loading Loading @@ -553,7 +552,7 @@ public class SlidingDrawer extends ViewGroup { mAnimating = true; removeCallbacks(mSlidingRunnable); postDelayed(mSlidingRunnable, ANIMATION_FRAME_DURATION); stopTracking(); stopTracking(notifyScrollListener); } private void prepareTracking(int position) { Loading Loading @@ -681,11 +680,11 @@ public class SlidingDrawer extends ViewGroup { content.setVisibility(View.GONE); } private void stopTracking() { private void stopTracking(boolean notifyScrollListener) { mHandle.setPressed(false); mTracking = false; if (mOnDrawerScrollListener != null) { if (notifyScrollListener && mOnDrawerScrollListener != null) { mOnDrawerScrollListener.onScrollEnded(); } Loading Loading @@ -802,7 +801,7 @@ public class SlidingDrawer extends ViewGroup { if (scrollListener != null) { scrollListener.onScrollStarted(); } animateClose(mVertical ? mHandle.getTop() : mHandle.getLeft()); animateClose(mVertical ? mHandle.getTop() : mHandle.getLeft(), false); if (scrollListener != null) { scrollListener.onScrollEnded(); Loading @@ -824,7 +823,7 @@ public class SlidingDrawer extends ViewGroup { if (scrollListener != null) { scrollListener.onScrollStarted(); } animateOpen(mVertical ? mHandle.getTop() : mHandle.getLeft()); animateOpen(mVertical ? mHandle.getTop() : mHandle.getLeft(), false); sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); Loading Loading
core/java/android/widget/SlidingDrawer.java +16 −17 Original line number Diff line number Diff line Loading @@ -22,8 +22,6 @@ import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Rect; import android.os.Handler; import android.os.Message; import android.os.SystemClock; import android.util.AttributeSet; import android.view.MotionEvent; Loading Loading @@ -475,19 +473,19 @@ public class SlidingDrawer extends ViewGroup { playSoundEffect(SoundEffectConstants.CLICK); if (mExpanded) { animateClose(vertical ? top : left); animateClose(vertical ? top : left, true); } else { animateOpen(vertical ? top : left); animateOpen(vertical ? top : left, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } else { performFling(vertical ? top : left, velocity, false); performFling(vertical ? top : left, velocity, false, true); } } break; Loading @@ -497,17 +495,18 @@ public class SlidingDrawer extends ViewGroup { return mTracking || mAnimating || super.onTouchEvent(event); } private void animateClose(int position) { private void animateClose(int position, boolean notifyScrollListener) { prepareTracking(position); performFling(position, mMaximumAcceleration, true); performFling(position, mMaximumAcceleration, true, notifyScrollListener); } private void animateOpen(int position) { private void animateOpen(int position, boolean notifyScrollListener) { prepareTracking(position); performFling(position, -mMaximumAcceleration, true); performFling(position, -mMaximumAcceleration, true, notifyScrollListener); } private void performFling(int position, float velocity, boolean always) { private void performFling(int position, float velocity, boolean always, boolean notifyScrollListener) { mAnimationPosition = position; mAnimatedVelocity = velocity; Loading Loading @@ -553,7 +552,7 @@ public class SlidingDrawer extends ViewGroup { mAnimating = true; removeCallbacks(mSlidingRunnable); postDelayed(mSlidingRunnable, ANIMATION_FRAME_DURATION); stopTracking(); stopTracking(notifyScrollListener); } private void prepareTracking(int position) { Loading Loading @@ -681,11 +680,11 @@ public class SlidingDrawer extends ViewGroup { content.setVisibility(View.GONE); } private void stopTracking() { private void stopTracking(boolean notifyScrollListener) { mHandle.setPressed(false); mTracking = false; if (mOnDrawerScrollListener != null) { if (notifyScrollListener && mOnDrawerScrollListener != null) { mOnDrawerScrollListener.onScrollEnded(); } Loading Loading @@ -802,7 +801,7 @@ public class SlidingDrawer extends ViewGroup { if (scrollListener != null) { scrollListener.onScrollStarted(); } animateClose(mVertical ? mHandle.getTop() : mHandle.getLeft()); animateClose(mVertical ? mHandle.getTop() : mHandle.getLeft(), false); if (scrollListener != null) { scrollListener.onScrollEnded(); Loading @@ -824,7 +823,7 @@ public class SlidingDrawer extends ViewGroup { if (scrollListener != null) { scrollListener.onScrollStarted(); } animateOpen(mVertical ? mHandle.getTop() : mHandle.getLeft()); animateOpen(mVertical ? mHandle.getTop() : mHandle.getLeft(), false); sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED); Loading