Fixed Lollipop issue were the edit list would not behave correctly
This commit is contained in:
parent
b2fc0d87a7
commit
103c8cbc4f
2 changed files with 12 additions and 6 deletions
|
|
@ -20,6 +20,7 @@ public class UeBehaviourStop extends UeBehaviour {
|
||||||
if(!super.stopExecution()) {
|
if(!super.stopExecution()) {
|
||||||
log.debug("Terminating executor");
|
log.debug("Terminating executor");
|
||||||
executor.terminateNonBlock();
|
executor.terminateNonBlock();
|
||||||
|
executor.setNextBehaviour(0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,8 @@ import android.graphics.Color;
|
||||||
import android.graphics.Paint;
|
import android.graphics.Paint;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
import android.graphics.drawable.BitmapDrawable;
|
import android.graphics.drawable.BitmapDrawable;
|
||||||
|
import android.os.Build;
|
||||||
|
import android.support.v4.BuildConfig;
|
||||||
import android.util.AttributeSet;
|
import android.util.AttributeSet;
|
||||||
import android.util.DisplayMetrics;
|
import android.util.DisplayMetrics;
|
||||||
import android.view.MotionEvent;
|
import android.view.MotionEvent;
|
||||||
|
|
@ -353,20 +355,24 @@ public class DynamicListView extends ListView {
|
||||||
|
|
||||||
final long switchItemID = isBelow ? mBelowItemId : mAboveItemId;
|
final long switchItemID = isBelow ? mBelowItemId : mAboveItemId;
|
||||||
View switchView = isBelow ? belowView : aboveView;
|
View switchView = isBelow ? belowView : aboveView;
|
||||||
final int originalItem = getPositionForView(mobileView);
|
|
||||||
|
|
||||||
if (switchView == null) {
|
if (switchView == null) {
|
||||||
updateNeighborViewsForID(mMobileItemId);
|
updateNeighborViewsForID(mMobileItemId);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
listener.swapItems(originalItem, getPositionForView(switchView));
|
listener.swapItems(getPositionForView(mobileView), getPositionForView(switchView));
|
||||||
((StableArrayAdapter) getAdapter()).notifyDataSetChanged();
|
((StableArrayAdapter) getAdapter()).notifyDataSetChanged();
|
||||||
|
|
||||||
mDownY = mLastEventY;
|
mDownY = mLastEventY;
|
||||||
|
|
||||||
mobileView.setVisibility(View.VISIBLE);
|
if(android.os.Build.VERSION.SDK_INT < 21) {
|
||||||
switchView.setVisibility(View.INVISIBLE);
|
// As we swap the items, the mobileView and switchView will contain the
|
||||||
|
// switched items in older versions of android so we need to switch the
|
||||||
|
// visibility of the two views.
|
||||||
|
mobileView.setVisibility(View.VISIBLE);
|
||||||
|
switchView.setVisibility(View.INVISIBLE);
|
||||||
|
}
|
||||||
|
|
||||||
updateNeighborViewsForID(mMobileItemId);
|
updateNeighborViewsForID(mMobileItemId);
|
||||||
|
|
||||||
|
|
@ -375,11 +381,9 @@ public class DynamicListView extends ListView {
|
||||||
observer.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
|
observer.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() {
|
||||||
public boolean onPreDraw() {
|
public boolean onPreDraw() {
|
||||||
observer.removeOnPreDrawListener(this);
|
observer.removeOnPreDrawListener(this);
|
||||||
|
|
||||||
View switchView = getViewForID(switchItemID);
|
View switchView = getViewForID(switchItemID);
|
||||||
|
|
||||||
mTotalOffset += deltaY;
|
mTotalOffset += deltaY;
|
||||||
|
|
||||||
int switchViewNewTop = switchView.getTop();
|
int switchViewNewTop = switchView.getTop();
|
||||||
int delta = switchViewStartTop - switchViewNewTop;
|
int delta = switchViewStartTop - switchViewNewTop;
|
||||||
|
|
||||||
|
|
@ -428,6 +432,7 @@ public class DynamicListView extends ListView {
|
||||||
}
|
}
|
||||||
else if(mMode == TouchMode.SWAP) {
|
else if(mMode == TouchMode.SWAP) {
|
||||||
mHoverCellCurrentBounds.offsetTo(mHoverCellOriginalBounds.left, mobileView.getTop());
|
mHoverCellCurrentBounds.offsetTo(mHoverCellOriginalBounds.left, mobileView.getTop());
|
||||||
|
((StableArrayAdapter) getAdapter()).notifyDataSetChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Animate
|
// Animate
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue