You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/03/08 05:41:29 UTC
[1/4] incubator-weex git commit: * [android] update keepscrollto
Repository: incubator-weex
Updated Branches:
refs/heads/0.11-dev ccd034636 -> a29123297
* [android] update keepscrollto
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/21bb2df5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/21bb2df5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/21bb2df5
Branch: refs/heads/0.11-dev
Commit: 21bb2df58ea59c1f789436e482e18e19b7fff020
Parents: 59dee77
Author: xkli <56...@qq.com>
Authored: Mon Mar 6 19:24:16 2017 +0800
Committer: xkli <56...@qq.com>
Committed: Mon Mar 6 20:18:30 2017 +0800
----------------------------------------------------------------------
.../weex/ui/component/list/BasicListComponent.java | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/21bb2df5/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
index 142e22f..bbcf423 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
@@ -217,6 +217,7 @@ import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.text.TextUtils;
+import android.util.Log;
import android.util.SparseArray;
import android.view.View;
import android.view.ViewGroup;
@@ -229,7 +230,6 @@ import com.taobao.weex.WXSDKInstance;
import com.taobao.weex.annotation.JSMethod;
import com.taobao.weex.common.Constants;
import com.taobao.weex.common.OnWXScrollListener;
-import com.taobao.weex.common.WXRuntimeException;
import com.taobao.weex.dom.ImmutableDomObject;
import com.taobao.weex.dom.WXDomObject;
import com.taobao.weex.ui.component.AppearanceHelper;
@@ -684,6 +684,8 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
if (pos <= fVisible) {
beforeFirstVisibleItem = true;
+ Log.e("showSticky","pos:"+pos);
+ Log.e("showSticky","fVisible:"+fVisible);
}
}
@@ -695,6 +697,10 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
int top = location[1] - parentLocation[1];
boolean showSticky = beforeFirstVisibleItem && cell.getLocationFromStart() >= 0 && top <= 0 && dy >= 0;
+ Log.e("showSticky","beforeFirstVisibleItem:"+beforeFirstVisibleItem);
+ Log.e("showSticky","top:"+top);
+ Log.e("showSticky","dy:"+dy);
+ Log.e("showSticky","showSticky:"+showSticky);
boolean removeSticky = cell.getLocationFromStart() <= 0 && top > 0 && dy <= 0;
if (showSticky) {
bounceRecyclerView.notifyStickyShow(cell);
@@ -762,8 +768,10 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
} else {
view.getInnerView().setItemAnimator(null);
}
- boolean isKeepScrollPosition = isKeepScrollPosition(child);
+ boolean isKeepScrollPosition = isKeepScrollPosition(child,index);
if (isKeepScrollPosition) {
+ int last=((LinearLayoutManager)view.getInnerView().getLayoutManager()).findLastVisibleItemPosition();
+ ((LinearLayoutManager)view.getInnerView().getLayoutManager()).scrollToPosition(last);
view.getRecyclerViewBaseAdapter().notifyItemInserted(adapterPosition);
} else {
view.getRecyclerViewBaseAdapter().notifyItemChanged(adapterPosition);
@@ -793,11 +801,11 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
* @param child Need to insert the component
* @return fixed=true
*/
- private boolean isKeepScrollPosition(WXComponent child) {
+ private boolean isKeepScrollPosition(WXComponent child,int index) {
ImmutableDomObject domObject = child.getDomObject();
if (domObject != null) {
Object attr = domObject.getAttrs().get(Constants.Name.KEEP_SCROLL_POSITION);
- if (WXUtils.getBoolean(attr, false)) {
+ if (WXUtils.getBoolean(attr, false) && index <= getChildCount() && index>-1) {
return true;
}
}
[3/4] incubator-weex git commit: * [android] remove redundancy code
Posted by so...@apache.org.
* [android] remove redundancy code
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/33f06ed2
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/33f06ed2
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/33f06ed2
Branch: refs/heads/0.11-dev
Commit: 33f06ed28d4b5fc33226161511e49d935703c591
Parents: c4eac33
Author: xkli <56...@qq.com>
Authored: Mon Mar 6 20:24:37 2017 +0800
Committer: xkli <56...@qq.com>
Committed: Mon Mar 6 20:24:37 2017 +0800
----------------------------------------------------------------------
.../java/com/taobao/weex/ui/component/list/BasicListComponent.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/33f06ed2/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
index 7536562..b5acc5e 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
@@ -766,7 +766,7 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
boolean isKeepScrollPosition = isKeepScrollPosition(child,index);
if (isKeepScrollPosition) {
int last=((LinearLayoutManager)view.getInnerView().getLayoutManager()).findLastVisibleItemPosition();
- ((LinearLayoutManager)view.getInnerView().getLayoutManager()).scrollToPosition(last);
+ view.getInnerView().getLayoutManager().scrollToPosition(last);
view.getRecyclerViewBaseAdapter().notifyItemInserted(adapterPosition);
} else {
view.getRecyclerViewBaseAdapter().notifyItemChanged(adapterPosition);
[2/4] incubator-weex git commit: * [android] update sticky
Posted by so...@apache.org.
* [android] update sticky
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c4eac330
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c4eac330
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c4eac330
Branch: refs/heads/0.11-dev
Commit: c4eac330eb8361e1e6dd473a4a0a438bf42620b6
Parents: 21bb2df
Author: xkli <56...@qq.com>
Authored: Mon Mar 6 20:13:44 2017 +0800
Committer: xkli <56...@qq.com>
Committed: Mon Mar 6 20:18:41 2017 +0800
----------------------------------------------------------------------
.../taobao/weex/ui/component/list/BasicListComponent.java | 9 ++-------
.../taobao/weex/ui/component/list/ListComponentView.java | 1 +
.../taobao/weex/ui/component/list/SimpleRecyclerView.java | 5 +++++
.../weex/ui/view/refresh/wrapper/BounceRecyclerView.java | 10 +++++++++-
4 files changed, 17 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c4eac330/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
index bbcf423..7536562 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
@@ -217,7 +217,6 @@ import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.StaggeredGridLayoutManager;
import android.text.TextUtils;
-import android.util.Log;
import android.util.SparseArray;
import android.view.View;
import android.view.ViewGroup;
@@ -684,8 +683,6 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
if (pos <= fVisible) {
beforeFirstVisibleItem = true;
- Log.e("showSticky","pos:"+pos);
- Log.e("showSticky","fVisible:"+fVisible);
}
}
@@ -697,15 +694,13 @@ public abstract class BasicListComponent<T extends ViewGroup & ListComponentView
int top = location[1] - parentLocation[1];
boolean showSticky = beforeFirstVisibleItem && cell.getLocationFromStart() >= 0 && top <= 0 && dy >= 0;
- Log.e("showSticky","beforeFirstVisibleItem:"+beforeFirstVisibleItem);
- Log.e("showSticky","top:"+top);
- Log.e("showSticky","dy:"+dy);
- Log.e("showSticky","showSticky:"+showSticky);
boolean removeSticky = cell.getLocationFromStart() <= 0 && top > 0 && dy <= 0;
if (showSticky) {
bounceRecyclerView.notifyStickyShow(cell);
} else if (removeSticky) {
bounceRecyclerView.notifyStickyRemove(cell);
+ }else{
+ bounceRecyclerView.updateStickyView();
}
cell.setLocationFromStart(top);
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c4eac330/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java
index 648c747..54ff7ac 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java
@@ -219,5 +219,6 @@ public interface ListComponentView {
void setRecyclerViewBaseAdapter(RecyclerViewBaseAdapter adapter);
void notifyStickyShow(WXCell component);
void notifyStickyRemove(WXCell component);
+ void updateStickyView();
RecyclerViewBaseAdapter getRecyclerViewBaseAdapter();
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c4eac330/android/sdk/src/main/java/com/taobao/weex/ui/component/list/SimpleRecyclerView.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/SimpleRecyclerView.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/SimpleRecyclerView.java
index 1523717..49f4eda 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/list/SimpleRecyclerView.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/list/SimpleRecyclerView.java
@@ -323,6 +323,11 @@ class SimpleRecyclerView extends WXRecyclerView implements ListComponentView{
}
@Override
+ public void updateStickyView() {
+
+ }
+
+ @Override
public RecyclerViewBaseAdapter getRecyclerViewBaseAdapter() {
return mAdapter;
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c4eac330/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java
index 2d81b37..4a94903 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java
@@ -306,6 +306,14 @@ public class BounceRecyclerView extends BaseBounceView<WXRecyclerView> implement
}
}
+ @Override
+ public void updateStickyView() {
+ if (!headComponentStack.isEmpty()) {
+ WXCell header = headComponentStack.peek();
+ header.getRealView().bringToFront();
+ }
+ }
+
/**
* @param component
*/
@@ -338,7 +346,7 @@ public class BounceRecyclerView extends BaseBounceView<WXRecyclerView> implement
if((existedParent = (ViewGroup)headerView.getParent())!= null){
existedParent.removeView(headerView);
}
- addView(headerView);
+ addView(headerView,getChildCount()-1);
//recover translation, sometimes it will be changed on fling
headerView.setTranslationX(translationX);
headerView.setTranslationY(translationY);
[4/4] incubator-weex git commit: Merge branch
'0.11-dev-insert-keep-position' of github.com:xkli/incubator-weex into
0.11-dev This closes #44
Posted by so...@apache.org.
Merge branch '0.11-dev-insert-keep-position' of github.com:xkli/incubator-weex into 0.11-dev
This closes #44
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a2912329
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a2912329
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a2912329
Branch: refs/heads/0.11-dev
Commit: a2912329792f303da8699746c53853bfb5bece83
Parents: ccd0346 33f06ed
Author: sospartan <so...@gmail.com>
Authored: Wed Mar 8 13:41:07 2017 +0800
Committer: sospartan <so...@gmail.com>
Committed: Wed Mar 8 13:41:07 2017 +0800
----------------------------------------------------------------------
.../taobao/weex/ui/component/list/BasicListComponent.java | 10 +++++++---
.../taobao/weex/ui/component/list/ListComponentView.java | 1 +
.../taobao/weex/ui/component/list/SimpleRecyclerView.java | 5 +++++
.../weex/ui/view/refresh/wrapper/BounceRecyclerView.java | 10 +++++++++-
4 files changed, 22 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a2912329/android/sdk/src/main/java/com/taobao/weex/ui/component/list/BasicListComponent.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a2912329/android/sdk/src/main/java/com/taobao/weex/ui/component/list/ListComponentView.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a2912329/android/sdk/src/main/java/com/taobao/weex/ui/view/refresh/wrapper/BounceRecyclerView.java
----------------------------------------------------------------------