Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00f073db authored by Selim Cinek's avatar Selim Cinek Committed by Android Git Automerger
Browse files

am eed83478: am 9e7b6c04: am f2a6160b: am 6b44ae6e: am 311fc0b3: Fixed a crash...

am eed83478: am 9e7b6c04: am f2a6160b: am 6b44ae6e: am 311fc0b3: Fixed a crash that could occur in the ObservableScrollView

* commit 'eed83478':
  Fixed a crash that could occur in the ObservableScrollView
parents ed4d0cce eed83478
Loading
Loading
Loading
Loading
+15 −3
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ public class ObservableScrollView extends ScrollView {
    private float mLastX;
    private float mLastY;
    private boolean mBlockFlinging;
    private boolean mTouchCancelled;

    public ObservableScrollView(Context context, AttributeSet attrs) {
        super(context, attrs);
@@ -87,9 +88,20 @@ public class ObservableScrollView extends ScrollView {

    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        boolean isEndGuesture = (ev.getAction() == MotionEvent.ACTION_UP
                || ev.getAction() == MotionEvent.ACTION_CANCEL);
        if (!mTouchEnabled && !isEndGuesture) {
        if (ev.getAction() == MotionEvent.ACTION_DOWN) {
            if (!mTouchEnabled) {
                mTouchCancelled = true;
                return false;
            }
            mTouchCancelled = false;
        } else if (mTouchCancelled) {
            return false;
        } else if (!mTouchEnabled) {
            MotionEvent cancel = MotionEvent.obtain(ev);
            cancel.setAction(MotionEvent.ACTION_CANCEL);
            super.dispatchTouchEvent(ev);
            cancel.recycle();
            mTouchCancelled = true;
            return false;
        }
        return super.dispatchTouchEvent(ev);