From 4076656e2bc2d1284993538f3409693c6df60a9b Mon Sep 17 00:00:00 2001 From: Petri Virkkunen Date: Thu, 26 Sep 2024 11:11:01 +0300 Subject: [PATCH] Android: Use main thread to add QtEditText to view hierarchy QtWindow is adding QtEditText to its view hierarchy in qtMainThread, instead of the main thread. This causes crashes. Fixes: QTBUG-129201 Change-Id: I10a638d281198a82edc7a81e23182b0c66e83a0b Reviewed-by: Assam Boudjelthia (cherry picked from commit cc0629a4877ff7609094a29e4a18252c0de057b0) Reviewed-by: Qt Cherry-pick Bot --- src/android/jar/src/org/qtproject/qt/android/QtWindow.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/android/jar/src/org/qtproject/qt/android/QtWindow.java b/src/android/jar/src/org/qtproject/qt/android/QtWindow.java index 1f06fef50a9..35de4858370 100644 --- a/src/android/jar/src/org/qtproject/qt/android/QtWindow.java +++ b/src/android/jar/src/org/qtproject/qt/android/QtWindow.java @@ -44,9 +44,12 @@ class QtWindow extends QtLayout implements QtSurfaceInterface { if (!isForeignWindow) { m_editText = new QtEditText(context, listener); - addView(m_editText, new QtLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, - ViewGroup.LayoutParams.WRAP_CONTENT)); m_editText.setImportantForAccessibility(View.IMPORTANT_FOR_ACCESSIBILITY_NO); + QtNative.runAction(() -> { + addView(m_editText, + new QtLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, + ViewGroup.LayoutParams.WRAP_CONTENT)); + }); } else { m_editText = null; }