You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ky...@apache.org on 2018/10/24 02:49:00 UTC
[incubator-weex] branch master updated: * [android] Support
keyboardSize (#1638)
This is an automated email from the ASF dual-hosted git repository.
kyork pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-weex.git
The following commit(s) were added to refs/heads/master by this push:
new 27c43e5 * [android] Support keyboardSize (#1638)
27c43e5 is described below
commit 27c43e5a0455bf1629001468f472363066c756b7
Author: 莫绪旻 <mi...@foxmail.com>
AuthorDate: Wed Oct 24 10:48:55 2018 +0800
* [android] Support keyboardSize (#1638)
---
.../com/taobao/weex/ui/component/AbstractEditComponent.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
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 80b9bf9..e6a48c2 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
@@ -20,6 +20,7 @@ package com.taobao.weex.ui.component;
import android.app.Activity;
import android.content.Context;
+import android.graphics.Rect;
import android.support.annotation.NonNull;
import android.text.Editable;
import android.text.InputFilter;
@@ -59,6 +60,7 @@ import com.taobao.weex.utils.TypefaceUtil;
import com.taobao.weex.utils.WXLogUtils;
import com.taobao.weex.utils.WXResourceUtils;
import com.taobao.weex.utils.WXUtils;
+import com.taobao.weex.utils.WXViewUtils;
import java.util.ArrayList;
import java.util.HashMap;
@@ -901,7 +903,7 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
if (host == null) {
return;
}
- Context context = host.getContext();
+ final Context context = host.getContext();
if (context != null && context instanceof Activity) {
SoftKeyboardDetector.registerKeyboardEventListener((Activity) context, new SoftKeyboardDetector.OnKeyboardEventListener() {
@Override
@@ -909,6 +911,13 @@ public abstract class AbstractEditComponent extends WXComponent<WXEditText> {
if (mListeningKeyboard) {
Map<String, Object> event = new HashMap<>(1);
event.put("isShow", isShown);
+ if (isShown) {
+ Rect r = new Rect();
+ ((Activity) context).getWindow().getDecorView().getWindowVisibleDisplayFrame(r);
+ float keyboardSize = WXViewUtils.getWebPxByWidth(WXViewUtils.getScreenHeight(context) - (r.bottom - r.top),
+ getInstance().getInstanceViewPortWidth());
+ event.put("keyboardSize", keyboardSize);
+ }
fireEvent(Constants.Event.KEYBOARD, event);
}
if (!isShown) {