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/06/22 05:28:30 UTC

[39/40] incubator-weex git commit: * [android] allow movement on textarea component

* [android] allow movement on textarea component


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7fc11908
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7fc11908
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7fc11908

Branch: refs/heads/0.15-dev
Commit: 7fc1190800aa5567a9ebce967954e999d50390b5
Parents: 15c7cd0
Author: moxun.ljf <fu...@foxmail.com>
Authored: Tue Jun 20 12:02:40 2017 +0800
Committer: sospartan <so...@apache.org>
Committed: Thu Jun 22 13:19:48 2017 +0800

----------------------------------------------------------------------
 .../weex/ui/component/AbstractEditComponent.java      | 14 ++++++++------
 .../java/com/taobao/weex/ui/component/Textarea.java   |  6 ++++++
 .../main/java/com/taobao/weex/ui/view/WXEditText.java |  9 +++++++--
 3 files changed, 21 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/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 bf8935e..e2d666e 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
@@ -210,18 +210,20 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
 
         @Override
         public void onTextChanged(CharSequence s, int start, int before, int count) {
+
+          if (mIgnoreNextOnInputEvent) {
+            mIgnoreNextOnInputEvent = false;
+          }
+
           if (mBeforeText.equals(s.toString())) {
             return;
           }
 
           mBeforeText = s.toString();
 
-          if (mIgnoreNextOnInputEvent) {
-            mIgnoreNextOnInputEvent = false;
-            return;
+          if (!mIgnoreNextOnInputEvent) {
+            fireEvent(Constants.Event.INPUT, s.toString());
           }
-
-          fireEvent(Constants.Event.INPUT, s.toString());
         }
 
         @Override
@@ -331,7 +333,7 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
         Integer maxLength = WXUtils.getInteger(param, null);
         if (maxLength != null)
           setMaxLength(maxLength);
-          return true;
+        return true;
       case Constants.Name.MAX:
         setMax(String.valueOf(param));
         return true;

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
index 44b5754..7e36d27 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/Textarea.java
@@ -37,6 +37,12 @@ public class Textarea extends AbstractEditComponent {
   }
 
   @Override
+  protected void onHostViewInitialized(WXEditText host) {
+    host.setAllowDisableMovement(false);
+    super.onHostViewInitialized(host);
+  }
+
+  @Override
   protected void appleStyleAfterCreated(WXEditText editText) {
     super.appleStyleAfterCreated(editText);
     String rowsStr = (String) getDomObject().getStyles().get(Constants.Name.ROWS);

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7fc11908/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
index 3bbc9ac..c6b2461 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/view/WXEditText.java
@@ -35,6 +35,7 @@ public class WXEditText extends EditText implements WXGestureObservable {
 
   private WXGesture wxGesture;
   private int mLines = 1;
+  private boolean mAllowDisableMovement = true;
 
   public WXEditText(Context context) {
     super(context);
@@ -86,9 +87,9 @@ public class WXEditText extends EditText implements WXGestureObservable {
     super.onSizeChanged(w, h, oldw, oldh);
     int contentH = getLayout().getHeight();
     //TODO: known issue,set movement to null will make cursor disappear.
-    if(h < contentH){
+    if(mAllowDisableMovement && h < contentH){
       setMovementMethod(null);
-    }else{
+    } else {
       setMovementMethod(getDefaultMovementMethod());
     }
   }
@@ -97,4 +98,8 @@ public class WXEditText extends EditText implements WXGestureObservable {
   public boolean postDelayed(Runnable action, long delayMillis) {
     return super.postDelayed(WXThread.secure(action), delayMillis);
   }
+
+  public void setAllowDisableMovement(boolean allow) {
+    mAllowDisableMovement = allow;
+  }
 }