From 68a9229a97d358639357f76cfb186bb61aa6ce92 Mon Sep 17 00:00:00 2001 From: Paul Olav Tvete Date: Fri, 21 Feb 2014 09:58:32 +0100 Subject: Android input method improvements Use the new inputmethod query API. and get rid of the hack where we would move the cursor back and forwards to make sure that the Android software keyboard noticed that the cursor had moved. The android plugin now uses absolute positions instead of position within the paragraph for all cursor handling (provided that the control supports the new API). Task-number: QTBUG-37511 Change-Id: I03463dbbcb4acbfa41e2eab06889d021d50da01f Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java | 2 ++ src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java | 1 + 2 files changed, 3 insertions(+) (limited to 'src/android/jar') diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java index aa18dfc2d1..ea8e5cd44c 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java @@ -301,6 +301,8 @@ public class QtActivityDelegate protected void onReceiveResult(int resultCode, Bundle resultData) { switch (resultCode) { case InputMethodManager.RESULT_SHOWN: + QtNativeInputConnection.updateCursorPosition(); + //FALLTHROUGH case InputMethodManager.RESULT_UNCHANGED_SHOWN: setKeyboardVisibility(true); break; diff --git a/src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java b/src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java index 4b2d50ca1f..5fdeb12c15 100644 --- a/src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java +++ b/src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java @@ -78,6 +78,7 @@ class QtNativeInputConnection static native boolean copy(); static native boolean copyURL(); static native boolean paste(); + static native boolean updateCursorPosition(); } class HideKeyboardRunnable implements Runnable { -- cgit v1.2.3