am bf4ddbac: Merge "Filter touch events in ExpandableView."

* commit 'bf4ddbacc92f934193442dcf7c53f413533c3002':
  Filter touch events in ExpandableView.
This commit is contained in:
Jorim Jaggi
2014-05-02 20:05:58 +00:00
committed by Android Git Automerger

View File

@@ -23,6 +23,7 @@ import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.InsetDrawable;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.View;
import android.widget.FrameLayout;
@@ -49,6 +50,19 @@ public abstract class ExpandableView extends FrameLayout {
mActualHeightInitialized = true;
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
if (filterMotionEvent(ev)) {
return super.dispatchTouchEvent(ev);
}
return false;
}
private boolean filterMotionEvent(MotionEvent event) {
return event.getActionMasked() != MotionEvent.ACTION_DOWN
|| event.getY() > mClipTopAmount && event.getY() < mActualHeight;
}
/**
* Sets the actual height of this notification. This is different than the laid out
* {@link View#getHeight()}, as we want to avoid layouting during scrolling and expanding.