summaryrefslogtreecommitdiffstats
path: root/src/android
diff options
context:
space:
mode:
Diffstat (limited to 'src/android')
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/QtActivityDelegate.java2
-rw-r--r--src/android/jar/src/org/qtproject/qt5/android/QtInputConnection.java3
-rw-r--r--src/android/java/java.pro14
-rw-r--r--src/android/java/res/layout/splash.xml2
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" />