From 5c6b10c3cee5737dbc041d0463220898c8120807 Mon Sep 17 00:00:00 2001 From: Piotr Mikolajczyk Date: Fri, 18 Dec 2020 10:51:30 +0100 Subject: Android: Place cursor correctly on screen when editing When editing text the cursor is not placed correctly. So this has been achieved by tricking Android into thinking that the input area is only the line where the cursor is, so it is forced to keep it on screen. Fixes: QTBUG-91073 Pick-to: 5.15 Change-Id: Icc2e8315deb76ca1a84819d3fdceaa7b027b1174 Reviewed-by: Ville Voutilainen --- .../src/org/qtproject/qt/android/bindings/QtActivity.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src/android/java') diff --git a/src/android/java/src/org/qtproject/qt/android/bindings/QtActivity.java b/src/android/java/src/org/qtproject/qt/android/bindings/QtActivity.java index a4e6df058d..553c9dffdd 100644 --- a/src/android/java/src/org/qtproject/qt/android/bindings/QtActivity.java +++ b/src/android/java/src/org/qtproject/qt/android/bindings/QtActivity.java @@ -1074,6 +1074,11 @@ public class QtActivity extends Activity QtNative.activityDelegate().resetSoftwareKeyboard(); } + public void updateInputItemRectangle(final int x, final int y, final int w, final int h) + { + QtNative.activityDelegate().updateInputItemRectangle(x, y, w, h); + } + public boolean setKeyboardVisibility(boolean visibility, long timeStamp) { return QtNative.activityDelegate().setKeyboardVisibility(visibility, timeStamp); @@ -1090,10 +1095,10 @@ public class QtActivity extends Activity } public void showSoftwareKeyboard(final int x, final int y, final int width, - final int height, final int inputHints, - final int enterKeyType) + final int height, final int editorHeight, + final int inputHints, final int enterKeyType) { - QtNative.activityDelegate().showSoftwareKeyboard(x, y, width, height, inputHints, enterKeyType); + QtNative.activityDelegate().showSoftwareKeyboard(x, y, width, height, editorHeight, inputHints, enterKeyType); } public boolean startApplication() -- cgit v1.2.3