diff options
Diffstat (limited to 'src/android')
4 files changed, 20 insertions, 1 deletions
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..5e6e227c2b 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 { @@ -127,7 +128,7 @@ public class QtInputConnection extends BaseInputConnection if (closing && m_inputState == InputStates.Hiding) return; - if (closing && m_inputState == InputStates.FinishComposing && m_view.getActivityDelegate().isSoftwareKeyboardVisible()) { + if (closing && m_view.getActivityDelegate().isSoftwareKeyboardVisible()) { m_view.postDelayed(new HideKeyboardRunnable(this), 100); m_inputState = InputStates.Hiding; } else { diff --git a/src/android/java/java.pro b/src/android/java/java.pro index 9d682e4f23..cff2d55d86 100644 --- a/src/android/java/java.pro +++ b/src/android/java/java.pro @@ -9,3 +9,17 @@ javaresources.files = \ javaresources.path = $$[QT_INSTALL_PREFIX]/src/android/java INSTALLS += javaresources + +!prefix_build:!equals(OUT_PWD, $$PWD) { + RETURN = $$escape_expand(\\n\\t) + equals(QMAKE_HOST.os, Windows) { + RETURN = $$escape_expand(\\r\\n\\t) + } + OUT_PATH = $$shell_path($$OUT_PWD) + + QMAKE_POST_LINK += \ + $${QMAKE_COPY} $$shell_path($$PWD/AndroidManifest.xml) $$OUT_PATH $$RETURN \ + $${QMAKE_COPY} $$shell_path($$PWD/version.xml) $$OUT_PATH $$RETURN \ + $${QMAKE_COPY_DIR} $$shell_path($$PWD/res) $$OUT_PATH $$RETURN \ + $${QMAKE_COPY_DIR} $$shell_path($$PWD/src) $$OUT_PATH +} diff --git a/src/android/java/res/layout/splash.xml b/src/android/java/res/layout/splash.xml new file mode 100644 index 0000000000..6875521a12 --- /dev/null +++ b/src/android/java/res/layout/splash.xml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" /> |