diff --git a/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/advanced/YoutubePlayerClientFragment.kt b/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/advanced/YoutubePlayerClientFragment.kt index 187cc635..4a00aeb5 100644 --- a/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/advanced/YoutubePlayerClientFragment.kt +++ b/app/src/main/java/com/deniscerri/ytdl/ui/more/settings/advanced/YoutubePlayerClientFragment.kt @@ -17,14 +17,12 @@ import androidx.recyclerview.widget.ItemTouchHelper import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.deniscerri.ytdl.R -import com.deniscerri.ytdl.database.models.Format import com.deniscerri.ytdl.database.models.YoutubePlayerClientItem import com.deniscerri.ytdl.ui.adapter.YoutubePlayerClientAdapter import com.deniscerri.ytdl.ui.more.settings.SettingsActivity import com.deniscerri.ytdl.util.UiUtil import com.google.android.material.card.MaterialCardView import com.google.android.material.chip.Chip -import com.google.common.reflect.TypeToken import com.google.gson.Gson @@ -61,8 +59,7 @@ class YoutubePlayerClientFragment : Fragment(), YoutubePlayerClientAdapter.OnIte recyclerView.adapter = listAdapter itemTouchHelper.attachToRecyclerView(recyclerView) currentListRaw = preferences.getString("youtube_player_clients", "[]")!! - val itemType = object : TypeToken>() {}.type - currentList = Gson().fromJson>(currentListRaw, itemType).toMutableList() + currentList = Gson().fromJson(currentListRaw, Array::class.java).toMutableList() listAdapter.submitList(currentList.toList()) val newClient = view.findViewById(R.id.newClient) @@ -96,7 +93,7 @@ class YoutubePlayerClientFragment : Fragment(), YoutubePlayerClientAdapter.OnIte val hasNoResults = currentList.isEmpty() noResults.isVisible = hasNoResults recyclerView.isVisible = !hasNoResults - dragHandle.isVisible = !hasNoResults + dragHandle.isVisible = currentList.size > 1 } diff --git a/app/src/main/java/com/deniscerri/ytdl/util/UiUtil.kt b/app/src/main/java/com/deniscerri/ytdl/util/UiUtil.kt index f0434385..b2c4a4b8 100644 --- a/app/src/main/java/com/deniscerri/ytdl/util/UiUtil.kt +++ b/app/src/main/java/com/deniscerri/ytdl/util/UiUtil.kt @@ -2329,8 +2329,7 @@ object UiUtil { }) val existingConfigsRaw = preferences.getString("youtube_player_clients", "[]") - val itemType = object : com.google.common.reflect.TypeToken>() {}.type - val existingConfigs = Gson().fromJson>(existingConfigsRaw, itemType).toMutableList() + val existingConfigs = Gson().fromJson(existingConfigsRaw, Array::class.java).toMutableList() defaultChips.filter { it.isNotBlank() }.forEach { if (!existingConfigs.any { it2 -> it2.playerClient == it }) { diff --git a/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt b/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt index f017809e..84216d98 100644 --- a/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt +++ b/app/src/main/java/com/deniscerri/ytdl/util/extractors/YTDLPUtil.kt @@ -37,8 +37,6 @@ import org.json.JSONArray import org.json.JSONObject import java.io.File import java.lang.reflect.Type -import java.net.URLEncoder -import java.security.MessageDigest import java.util.ArrayList import java.util.Locale import java.util.UUID @@ -1243,8 +1241,7 @@ class YTDLPUtil(private val context: Context) { val poTokens = mutableListOf() val configuredPlayerClientsRaw = sharedPreferences.getString("youtube_player_clients", "[]")!! - val itemType = object : com.google.common.reflect.TypeToken>() {}.type - val configuredPlayerClients = Gson().fromJson>(configuredPlayerClientsRaw, itemType).toMutableList() + val configuredPlayerClients = Gson().fromJson(configuredPlayerClientsRaw, Array::class.java).toMutableList() for (value in configuredPlayerClients) { if (value.enabled) {