Bug 918079 - Show highlight when overscrolling. r=kats
This commit is contained in:
@@ -129,6 +129,9 @@ class JavaPanZoomController
|
||||
/* Used to change the scrollY direction */
|
||||
private boolean mNegateWheelScrollY;
|
||||
|
||||
// Handler to be notified when overscroll occurs
|
||||
private Overscroll mOverscroll;
|
||||
|
||||
public JavaPanZoomController(PanZoomTarget target, View view, EventDispatcher eventDispatcher) {
|
||||
mTarget = target;
|
||||
mSubscroller = new SubdocumentScrollHelper(eventDispatcher);
|
||||
@@ -1113,6 +1116,18 @@ class JavaPanZoomController
|
||||
RectF maxMargins = mTarget.getMaxMargins();
|
||||
return (metrics.marginLeft < maxMargins.left || metrics.marginRight < maxMargins.right);
|
||||
}
|
||||
@Override
|
||||
protected void overscrollFling(final float velocity) {
|
||||
if (mOverscroll != null) {
|
||||
mOverscroll.setVelocity(velocity, Overscroll.Axis.X);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
protected void overscrollPan(final float distance) {
|
||||
if (mOverscroll != null) {
|
||||
mOverscroll.setDistance(distance, Overscroll.Axis.X);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private class AxisY extends Axis {
|
||||
@@ -1135,6 +1150,18 @@ class JavaPanZoomController
|
||||
RectF maxMargins = mTarget.getMaxMargins();
|
||||
return (metrics.marginTop < maxMargins.top || metrics.marginBottom < maxMargins.bottom);
|
||||
}
|
||||
@Override
|
||||
protected void overscrollFling(final float velocity) {
|
||||
if (mOverscroll != null) {
|
||||
mOverscroll.setVelocity(velocity, Overscroll.Axis.Y);
|
||||
}
|
||||
}
|
||||
@Override
|
||||
protected void overscrollPan(final float distance) {
|
||||
if (mOverscroll != null) {
|
||||
mOverscroll.setDistance(distance, Overscroll.Axis.Y);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1434,4 +1461,9 @@ class JavaPanZoomController
|
||||
public void updateScrollOffset(float cssX, float cssY) {
|
||||
// Nothing to update, this class doesn't store the scroll offset locally.
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setOverscrollHandler(final Overscroll handler) {
|
||||
mOverscroll = handler;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user