diff --git a/app/src/main/java/com/github/libretube/extensions/HideKeyboard.kt b/app/src/main/java/com/github/libretube/extensions/HideKeyboard.kt deleted file mode 100644 index 870186613..000000000 --- a/app/src/main/java/com/github/libretube/extensions/HideKeyboard.kt +++ /dev/null @@ -1,10 +0,0 @@ -package com.github.libretube.extensions - -import android.content.Context -import android.view.View -import android.view.inputmethod.InputMethodManager -import androidx.core.content.getSystemService - -fun Context.hideKeyboard(view: View) { - getSystemService()!!.hideSoftInputFromWindow(view.windowToken, 0) -} diff --git a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt index b64890139..17c1001a9 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/PlayerFragment.kt @@ -27,6 +27,7 @@ import androidx.core.graphics.drawable.toDrawable import androidx.core.net.toUri import androidx.core.os.bundleOf import androidx.core.os.postDelayed +import androidx.core.view.SoftwareKeyboardControllerCompat import androidx.core.view.WindowCompat import androidx.core.view.isGone import androidx.core.view.isInvisible @@ -67,7 +68,6 @@ import com.github.libretube.db.obj.WatchPosition import com.github.libretube.enums.PlayerEvent import com.github.libretube.enums.ShareObjectType import com.github.libretube.extensions.formatShort -import com.github.libretube.extensions.hideKeyboard import com.github.libretube.extensions.parcelable import com.github.libretube.extensions.seekBy import com.github.libretube.extensions.serializableExtra @@ -114,16 +114,16 @@ import com.github.libretube.util.TextUtils import com.github.libretube.util.TextUtils.toTimeInSeconds import com.github.libretube.util.YoutubeHlsPlaylistParser import com.github.libretube.util.deArrow -import java.io.IOException -import java.util.* -import java.util.concurrent.Executors -import kotlin.math.abs import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import kotlinx.coroutines.withContext import kotlinx.serialization.encodeToString import retrofit2.HttpException +import java.io.IOException +import java.util.* +import java.util.concurrent.Executors +import kotlin.math.abs @androidx.annotation.OptIn(androidx.media3.common.util.UnstableApi::class) class PlayerFragment : Fragment(), OnlinePlayerOptions { @@ -386,7 +386,7 @@ class PlayerFragment : Fragment(), OnlinePlayerOptions { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - context?.hideKeyboard(view) + SoftwareKeyboardControllerCompat(view).hide() // reset the callbacks of the playing queue PlayingQueue.resetToDefaults() diff --git a/app/src/main/java/com/github/libretube/ui/fragments/SearchResultFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/SearchResultFragment.kt index eb79575f1..32e0c50a4 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/SearchResultFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/SearchResultFragment.kt @@ -5,6 +5,7 @@ import android.util.Log import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import androidx.core.view.SoftwareKeyboardControllerCompat import androidx.core.view.isGone import androidx.core.view.isVisible import androidx.lifecycle.lifecycleScope @@ -18,7 +19,6 @@ import com.github.libretube.db.DatabaseHelper import com.github.libretube.db.obj.SearchHistoryItem import com.github.libretube.extensions.TAG import com.github.libretube.extensions.ceilHalf -import com.github.libretube.extensions.hideKeyboard import com.github.libretube.extensions.toastFromMainDispatcher import com.github.libretube.helpers.PreferenceHelper import com.github.libretube.ui.activities.MainActivity @@ -115,7 +115,7 @@ class SearchResultFragment : DynamicLayoutManagerFragment() { "${ShareDialog.YOUTUBE_FRONTEND_URL}/watch?v=$videoId" } ?: query - view?.let { context?.hideKeyboard(it) } + view?.let { SoftwareKeyboardControllerCompat(it).hide() } val response = try { withContext(Dispatchers.IO) { RetrofitInstance.api.getSearchResults(searchQuery, searchFilter).apply {