From 2da97714ff4fd6c37c99598621d49be8043aba6d Mon Sep 17 00:00:00 2001 From: Seal Date: Tue, 23 Dec 2014 11:36:53 +0800 Subject: [PATCH 1/3] Fix item place error when load more --- .../src/main/java/com/etsy/android/grid/StaggeredGridView.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/library/src/main/java/com/etsy/android/grid/StaggeredGridView.java b/library/src/main/java/com/etsy/android/grid/StaggeredGridView.java index 3e97811..620a5e0 100644 --- a/library/src/main/java/com/etsy/android/grid/StaggeredGridView.java +++ b/library/src/main/java/com/etsy/android/grid/StaggeredGridView.java @@ -996,6 +996,7 @@ private void onColumnSync() { private void setPositionColumn(final int position, final int column) { GridItemRecord rec = getOrCreateRecord(position); rec.column = column; + rec.isHeaderFooter = false; } private void setPositionHeightRatio(final int position, final int height) { @@ -1010,6 +1011,7 @@ private void setPositionHeightRatio(final int position, final int height) { private void setPositionIsHeaderFooter(final int position) { GridItemRecord rec = getOrCreateRecord(position); rec.isHeaderFooter = true; + rec.column = -1; } private GridItemRecord getOrCreateRecord(final int position) { From bccecfb1c66df45ea1d8a28df13d40908837129e Mon Sep 17 00:00:00 2001 From: Seal Date: Tue, 23 Dec 2014 15:56:33 +0800 Subject: [PATCH 2/3] Fix StaggeredGridView item click not response --- .../src/main/java/com/etsy/android/grid/ExtendableListView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/main/java/com/etsy/android/grid/ExtendableListView.java b/library/src/main/java/com/etsy/android/grid/ExtendableListView.java index 259530f..d0b8232 100644 --- a/library/src/main/java/com/etsy/android/grid/ExtendableListView.java +++ b/library/src/main/java/com/etsy/android/grid/ExtendableListView.java @@ -1048,7 +1048,7 @@ private boolean onTouchUpTap(final MotionEvent event) { mPendingCheckForTap : mPendingCheckForLongPress); } mLayoutMode = LAYOUT_NORMAL; - if (!mDataChanged && motionPosition >= 0 && mAdapter.isEnabled(motionPosition)) { + if (!mDataChanged && motionPosition >= 0 && mAdapter.isEnabled(motionPosition + mFirstPosition)) { mTouchMode = TOUCH_MODE_TAP; layoutChildren(); child.setPressed(true); From 7e372410194fc7d270e013f8610020120f3e8db8 Mon Sep 17 00:00:00 2001 From: Seal Date: Tue, 23 Dec 2014 17:53:36 +0800 Subject: [PATCH 3/3] Fix a tiny problem of this view --- .../src/main/java/com/etsy/android/grid/ExtendableListView.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/main/java/com/etsy/android/grid/ExtendableListView.java b/library/src/main/java/com/etsy/android/grid/ExtendableListView.java index d0b8232..8be0985 100644 --- a/library/src/main/java/com/etsy/android/grid/ExtendableListView.java +++ b/library/src/main/java/com/etsy/android/grid/ExtendableListView.java @@ -1297,7 +1297,7 @@ private boolean moveTheChildren(int deltaY, int incrementalDeltaY) { } for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); - if (child.getBottom() >= top) { + if (child.getBottom() >= top || i + firstPosition + 2 >= footerViewsStart) { break; } else {