From 212c354072646e0b890350a99f999a191d3e60d6 Mon Sep 17 00:00:00 2001 From: PhilKes Date: Fri, 18 Apr 2025 15:15:49 +0200 Subject: [PATCH] Show keyboard when EditText is focused for API < 27 --- .../presentation/view/misc/EditTextWithWatcher.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/app/src/main/java/com/philkes/notallyx/presentation/view/misc/EditTextWithWatcher.kt b/app/src/main/java/com/philkes/notallyx/presentation/view/misc/EditTextWithWatcher.kt index 061f3f3a..d872e2f5 100644 --- a/app/src/main/java/com/philkes/notallyx/presentation/view/misc/EditTextWithWatcher.kt +++ b/app/src/main/java/com/philkes/notallyx/presentation/view/misc/EditTextWithWatcher.kt @@ -1,6 +1,7 @@ package com.philkes.notallyx.presentation.view.misc import android.content.Context +import android.os.Build import android.text.Editable import android.text.TextWatcher import android.text.method.KeyListener @@ -8,6 +9,7 @@ import android.util.AttributeSet import android.view.inputmethod.InputMethodManager import androidx.appcompat.widget.AppCompatEditText import com.philkes.notallyx.presentation.clone +import com.philkes.notallyx.presentation.showKeyboard open class EditTextWithWatcher(context: Context, attrs: AttributeSet) : AppCompatEditText(context, attrs) { @@ -42,6 +44,19 @@ open class EditTextWithWatcher(context: Context, attrs: AttributeSet) : isFocusable = value isFocusableInTouchMode = value setTextIsSelectable(true) + + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O_MR1) { + setOnClickListener { + if (value) { + context.showKeyboard(this) + } + } + setOnFocusChangeListener { v, hasFocus -> + if (hasFocus && value) { + context.showKeyboard(this) + } + } + } } @Deprecated(