fixed txt file import not working with navigation component

This commit is contained in:
deniscerri 2023-05-21 09:41:13 +02:00
parent 9e8beb183a
commit 35f8f939e8
No known key found for this signature in database
GPG key ID: 95C43D517D830350
2 changed files with 11 additions and 11 deletions

View file

@ -14,11 +14,9 @@ import android.os.Build
import android.os.Bundle import android.os.Bundle
import android.provider.Settings import android.provider.Settings
import android.util.Log import android.util.Log
import androidx.drawerlayout.widget.DrawerLayout
import android.view.View import android.view.View
import android.view.WindowInsets import android.view.WindowInsets
import android.widget.CheckBox import android.widget.CheckBox
import android.widget.FrameLayout
import android.widget.TextView import android.widget.TextView
import androidx.annotation.RequiresApi import androidx.annotation.RequiresApi
import androidx.constraintlayout.widget.ConstraintLayout import androidx.constraintlayout.widget.ConstraintLayout
@ -29,6 +27,7 @@ import androidx.core.view.updateLayoutParams
import androidx.fragment.app.FragmentContainerView import androidx.fragment.app.FragmentContainerView
import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.lifecycleScope import androidx.lifecycle.lifecycleScope
import androidx.navigation.NavController
import androidx.navigation.fragment.NavHostFragment import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.findNavController
import androidx.navigation.ui.setupWithNavController import androidx.navigation.ui.setupWithNavController
@ -38,7 +37,6 @@ import com.deniscerri.ytdlnis.database.viewmodel.DownloadViewModel
import com.deniscerri.ytdlnis.database.viewmodel.ResultViewModel import com.deniscerri.ytdlnis.database.viewmodel.ResultViewModel
import com.deniscerri.ytdlnis.ui.BaseActivity import com.deniscerri.ytdlnis.ui.BaseActivity
import com.deniscerri.ytdlnis.ui.HomeFragment import com.deniscerri.ytdlnis.ui.HomeFragment
import com.deniscerri.ytdlnis.ui.downloads.DownloadQueueMainFragment
import com.deniscerri.ytdlnis.ui.more.settings.SettingsActivity import com.deniscerri.ytdlnis.ui.more.settings.SettingsActivity
import com.deniscerri.ytdlnis.util.ThemeUtil import com.deniscerri.ytdlnis.util.ThemeUtil
import com.deniscerri.ytdlnis.util.UpdateUtil import com.deniscerri.ytdlnis.util.UpdateUtil
@ -67,6 +65,7 @@ class MainActivity : BaseActivity() {
private lateinit var downloadViewModel: DownloadViewModel private lateinit var downloadViewModel: DownloadViewModel
private lateinit var navigationView: View private lateinit var navigationView: View
private lateinit var navHostFragment : NavHostFragment private lateinit var navHostFragment : NavHostFragment
private lateinit var navController : NavController
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
@ -87,7 +86,7 @@ class MainActivity : BaseActivity() {
checkUpdate() checkUpdate()
navHostFragment = supportFragmentManager.findFragmentById(R.id.frame_layout) as NavHostFragment navHostFragment = supportFragmentManager.findFragmentById(R.id.frame_layout) as NavHostFragment
val navController = navHostFragment.findNavController() navController = navHostFragment.findNavController()
navigationView = try { navigationView = try {
findViewById(R.id.bottomNavigationView) findViewById(R.id.bottomNavigationView)
}catch (e: Exception){ }catch (e: Exception){
@ -289,8 +288,13 @@ class MainActivity : BaseActivity() {
while (reader.read().also { c = it } != -1) { while (reader.read().also { c = it } != -1) {
textBuilder.append(c.toChar()) textBuilder.append(c.toChar())
} }
val l = listOf(*textBuilder.toString().split("\n").toTypedArray()) val bundle = Bundle()
(navHostFragment.childFragmentManager.primaryNavigationFragment!! as HomeFragment).handleFileIntent(l) bundle.putString("url", textBuilder.toString())
navController.popBackStack(R.id.homeFragment, true)
navController.navigate(
R.id.homeFragment,
bundle
)
} catch (e: Exception) { } catch (e: Exception) {
e.printStackTrace() e.printStackTrace()
} }

View file

@ -196,7 +196,7 @@ class HomeFragment : Fragment(), HomeAdapter.OnItemClickListener, OnClickListene
val url = requireArguments().getString("url") val url = requireArguments().getString("url")
if (inputQueries == null) inputQueries = mutableListOf() if (inputQueries == null) inputQueries = mutableListOf()
searchBar?.text = url searchBar?.text = url
inputQueries!!.add(url!!) inputQueries!!.addAll(url!!.split("\n"))
} }
if (inputQueries != null) { if (inputQueries != null) {
@ -503,10 +503,6 @@ class HomeFragment : Fragment(), HomeAdapter.OnItemClickListener, OnClickListene
} }
} }
fun handleFileIntent(lines: List<String>) {
inputQueries = lines.toMutableList()
}
fun scrollToTop() { fun scrollToTop() {
recyclerView!!.scrollToPosition(0) recyclerView!!.scrollToPosition(0)
(searchBar!!.parent as AppBarLayout).setExpanded(true, true) (searchBar!!.parent as AppBarLayout).setExpanded(true, true)