Meshtastic-Android/app/src/main/java/com/geeksville/mesh/ui/DebugFragment.kt

54 lines
1.8 KiB
Kotlin
Raw Normal View History

package com.geeksville.mesh.ui
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.fragment.app.Fragment
2022-07-29 21:28:09 -03:00
import androidx.fragment.app.activityViewModels
import androidx.lifecycle.asLiveData
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.geeksville.mesh.R
2022-09-13 22:49:38 -03:00
import com.geeksville.mesh.databinding.FragmentDebugBinding
import com.geeksville.mesh.model.UIViewModel
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
class DebugFragment : Fragment() {
2022-09-13 22:49:38 -03:00
private var _binding: FragmentDebugBinding? = null
2021-03-29 20:33:06 +08:00
// This property is only valid between onCreateView and onDestroyView.
private val binding get() = _binding!!
2022-07-29 21:28:09 -03:00
private val model: UIViewModel by activityViewModels()
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
2022-07-29 21:28:09 -03:00
): View {
2022-09-13 22:49:38 -03:00
_binding = FragmentDebugBinding.inflate(inflater, container, false)
return binding.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
2022-09-13 22:49:38 -03:00
val recyclerView = view.findViewById<RecyclerView>(R.id.debug_recyclerview)
val adapter = DebugAdapter(requireContext())
recyclerView.adapter = adapter
recyclerView.layoutManager = LinearLayoutManager(requireContext())
binding.clearButton.setOnClickListener {
2022-09-13 22:49:38 -03:00
model.deleteAllLogs()
}
2021-03-29 20:33:06 +08:00
binding.closeButton.setOnClickListener {
parentFragmentManager.popBackStack()
}
2022-09-13 22:49:38 -03:00
model.meshLog.asLiveData().observe(viewLifecycleOwner) { logs ->
logs?.let { adapter.setLogs(it) }
}
}
2020-09-23 22:47:45 -04:00
}