From 38233ac2c5fdac2fec6987a2ba179dcebe60f6ff Mon Sep 17 00:00:00 2001 From: Tangem Date: Tue, 24 Sep 2024 19:35:04 +0300 Subject: [PATCH] Updated on 2026-08-14 --- app/src/main/AndroidManifest.xml | 2 +- app/src/main/java/com/tangem/tap/MainActivity.kt | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 4a84a2b29f..5979dc8c9a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -55,7 +55,7 @@ android:launchMode="singleTop" android:screenOrientation="portrait" android:theme="@style/SplashTheme" - android:windowSoftInputMode="adjustNothing"> + android:windowSoftInputMode="adjustResize"> diff --git a/app/src/main/java/com/tangem/tap/MainActivity.kt b/app/src/main/java/com/tangem/tap/MainActivity.kt index 7735974a6d..10d69f7704 100644 --- a/app/src/main/java/com/tangem/tap/MainActivity.kt +++ b/app/src/main/java/com/tangem/tap/MainActivity.kt @@ -4,8 +4,10 @@ import android.annotation.SuppressLint import android.content.Intent import android.content.pm.ActivityInfo import android.content.res.Configuration +import android.os.Build import android.os.Bundle import android.view.View +import android.view.WindowManager import androidx.activity.SystemBarStyle import androidx.activity.enableEdgeToEdge import androidx.activity.viewModels @@ -217,6 +219,15 @@ class MainActivity : AppCompatActivity(), SnackbarHandler, ActivityResultCallbac super.onCreate(savedInstanceState) + // We have to allow adjust_resize (can only be specified in the manifest) for Android <=10, + // in order for imePadding to work correctly + // for Android 11+ we set SOFT_INPUT_ADJUST_NOTHING to prevent resizing the layout + // so that we don't have any distortions in the layout when displaying the keyboard + // https://issuetracker.google.com/issues/266331465 + if (Build.VERSION.SDK_INT > Build.VERSION_CODES.Q) { + window.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING) + } + splashScreen.setKeepOnScreenCondition { viewModel.isSplashScreenShown } installActivityDependencies()