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/13 10:07:01 UTC
[2/2] incubator-weex git commit: * [android] input/textarea always
consume touch event
* [android] input/textarea always consume touch event
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/d876e670
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/d876e670
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/d876e670
Branch: refs/heads/0.11-dev
Commit: d876e670c496a8be22e6137b2125a4919e4ef9d8
Parents: f8560bf
Author: sospartan <so...@gmail.com>
Authored: Mon Mar 13 17:35:45 2017 +0800
Committer: sospartan <so...@gmail.com>
Committed: Mon Mar 13 17:41:52 2017 +0800
----------------------------------------------------------------------
.../taobao/weex/ui/component/AbstractEditComponent.java | 6 ++++++
.../java/com/taobao/weex/ui/component/WXComponent.java | 12 +++++++++++-
2 files changed, 17 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d876e670/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
index d9d99c6..7d98b23 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/AbstractEditComponent.java
@@ -282,6 +282,12 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
});
}
+ @Override
+ protected boolean isConsumeTouch() {
+ //EditText always consume touch event except disabled.
+ return !isDisabled();
+ }
+
private void applyOnClickListener() {
addClickListener(new OnClickListener() {
@Override
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/d876e670/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
index 5e7adc8..88f4c80 100755
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
@@ -226,6 +226,7 @@ public abstract class WXComponent<T extends View> implements IWXObject, IWXActi
private WXAnimationModule.AnimationHolder mAnimationHolder;
private PesudoStatus mPesudoStatus = new PesudoStatus();
private boolean mIsDestroyed = false;
+ private boolean mIsDisabled = false;
//Holding the animation bean when component is uninitialized
public void postAnimation(WXAnimationModule.AnimationHolder holder) {
@@ -1091,12 +1092,17 @@ public abstract class WXComponent<T extends View> implements IWXObject, IWXActi
}
public void setDisabled(boolean disabled) {
+ mIsDisabled = disabled;
if (mHost == null) {
return;
}
mHost.setEnabled(!disabled);
}
+ public boolean isDisabled(){
+ return mIsDisabled;
+ }
+
public void setSticky(String sticky) {
if (!TextUtils.isEmpty(sticky) && sticky.equals(Constants.Value.STICKY)) {
Scrollable waScroller = getParentScroller();
@@ -1433,11 +1439,15 @@ public abstract class WXComponent<T extends View> implements IWXObject, IWXActi
boolean hasActivePesudo = mDomObj.getStyles().getPesudoStyles().containsKey(Constants.PSEUDO.ACTIVE);
View view;
if(hasActivePesudo && (view = getRealView()) != null) {
- boolean hasTouchConsumer = (mHostClickListeners != null && mHostClickListeners.size() > 0) || mGesture != null;
+ boolean hasTouchConsumer = isConsumeTouch();
view.setOnTouchListener(new TouchActivePseudoListener(this,!hasTouchConsumer));
}
}
+ protected boolean isConsumeTouch(){
+ return (mHostClickListeners != null && mHostClickListeners.size() > 0) || mGesture != null;
+ }
+
@Override
public void updateActivePseudo(boolean isSet) {
setPseudoClassStatus(Constants.PSEUDO.ACTIVE,isSet);