From 7c268b31c25441ad56f08ab9f769a3efe90bfea9 Mon Sep 17 00:00:00 2001 From: Andrei Coman Date: Tue, 6 Sep 2016 03:10:35 -0700 Subject: [PATCH] Fix TextInput contentSize Summary: This fixes some inaccuracies in our reporting of textinput's contentsize. First, we were not using the correct padding info. Then, we are converting the contentSize width and height to ints right before sending them over to JS. This adds some inaccuracy with the textinput behaviour, especially in the case of auto expending text inputs, since those same sizes are then sent right back. Reviewed By: astreet Differential Revision: D3806008 fbshipit-source-id: 7e32f91fde50099fd8a122833fd0042683e68df1 --- .../views/textinput/ReactContentSizeChangedEvent.java | 8 ++++---- .../react/views/textinput/ReactTextChangedEvent.java | 8 ++++---- .../react/views/textinput/ReactTextInputManager.java | 10 +++++----- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java index 73839812c..2ad1a1c3a 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java @@ -21,13 +21,13 @@ public class ReactContentSizeChangedEvent extends Event { public static final String EVENT_NAME = "topContentSizeChange"; - private int mContentWidth; - private int mContentHeight; + private float mContentWidth; + private float mContentHeight; public ReactContentSizeChangedEvent( int viewId, - int contentSizeWidth, - int contentSizeHeight) { + float contentSizeWidth, + float contentSizeHeight) { super(viewId); mContentWidth = contentSizeWidth; mContentHeight = contentSizeHeight; diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java index 2345f15c5..67ca37c5e 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java @@ -23,15 +23,15 @@ public class ReactTextChangedEvent extends Event { public static final String EVENT_NAME = "topChange"; private String mText; - private int mContentWidth; - private int mContentHeight; + private float mContentWidth; + private float mContentHeight; private int mEventCount; public ReactTextChangedEvent( int viewId, String text, - int contentSizeWidth, - int contentSizeHeight, + float contentSizeWidth, + float contentSizeHeight, int eventCount) { super(viewId); mText = text; diff --git a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java index be3568be1..89e2f1014 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java @@ -590,8 +590,8 @@ public class ReactTextInputManager extends BaseViewManager