mirror of
https://github.com/Aviortheking/Neo-Store.git
synced 2025-04-24 03:42:15 +00:00
Remove: MainNavFragments extension of CursorOwner.Callback
This commit is contained in:
parent
d427968ccb
commit
d183ebd5fc
@ -1,17 +1,13 @@
|
||||
package com.looker.droidify.ui.fragments
|
||||
|
||||
import android.database.Cursor
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.lifecycle.Lifecycle
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import androidx.lifecycle.repeatOnLifecycle
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import com.looker.droidify.R
|
||||
import com.looker.droidify.database.CursorOwner
|
||||
import com.looker.droidify.database.Product
|
||||
import com.looker.droidify.databinding.FragmentExploreXBinding
|
||||
import com.looker.droidify.entity.Repository
|
||||
import com.looker.droidify.ui.adapters.AppListAdapter
|
||||
@ -20,11 +16,10 @@ import com.looker.droidify.utility.RxUtils
|
||||
import com.looker.droidify.utility.extension.resources.getDrawableCompat
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import kotlinx.coroutines.flow.first
|
||||
import kotlinx.coroutines.launch
|
||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder
|
||||
|
||||
class ExploreFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
// TODO create categories layouts that hold the apps in horizontal layout
|
||||
class ExploreFragment : MainNavFragmentX() {
|
||||
|
||||
override lateinit var viewModel: MainNavFragmentViewModelX
|
||||
private lateinit var binding: FragmentExploreXBinding
|
||||
@ -71,20 +66,4 @@ class ExploreFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe { repositories = it }
|
||||
}
|
||||
|
||||
override fun onCursorData(request: CursorOwner.Request, cursor: Cursor?) {
|
||||
(binding.recyclerView.adapter as? AppListAdapter)?.apply {
|
||||
this.cursor = cursor
|
||||
lifecycleScope.launch {
|
||||
repeatOnLifecycle(Lifecycle.State.RESUMED) {
|
||||
emptyText = when {
|
||||
cursor == null -> ""
|
||||
viewModel.searchQuery.first()
|
||||
.isNotEmpty() -> getString(R.string.no_matching_applications_found)
|
||||
else -> getString(R.string.no_applications_available)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
package com.looker.droidify.ui.fragments
|
||||
|
||||
import android.database.Cursor
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
@ -9,7 +8,6 @@ import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.looker.droidify.R
|
||||
import com.looker.droidify.database.CursorOwner
|
||||
import com.looker.droidify.databinding.FragmentInstalledXBinding
|
||||
import com.looker.droidify.entity.ProductItem
|
||||
import com.looker.droidify.entity.Repository
|
||||
@ -24,7 +22,7 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder
|
||||
|
||||
class InstalledFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
class InstalledFragment : MainNavFragmentX() {
|
||||
|
||||
override lateinit var viewModel: MainNavFragmentViewModelX
|
||||
private lateinit var binding: FragmentInstalledXBinding
|
||||
@ -88,28 +86,4 @@ class InstalledFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe { repositories = it }
|
||||
}
|
||||
|
||||
override fun onCursorData(request: CursorOwner.Request, cursor: Cursor?) {
|
||||
// TODO get a list instead of the cursor
|
||||
// TODO use LiveData and observers instead of listeners
|
||||
val appItemList: List<ProductItem> = listOf()
|
||||
installedItemAdapter.set(appItemList
|
||||
.map { VAppItem(it, repositories[it.repositoryId]) }
|
||||
)
|
||||
updatedItemAdapter.set(appItemList.filter { it.canUpdate }
|
||||
.map { HAppItem(it, repositories[it.repositoryId]) }
|
||||
)
|
||||
/*
|
||||
lifecycleScope.launch {
|
||||
repeatOnLifecycle(Lifecycle.State.RESUMED) {
|
||||
emptyText = when {
|
||||
cursor == null -> ""
|
||||
viewModel.searchQuery.first()
|
||||
.isNotEmpty() -> getString(R.string.no_matching_applications_found)
|
||||
else -> getString(R.string.all_applications_up_to_date)
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
@ -1,6 +1,5 @@
|
||||
package com.looker.droidify.ui.fragments
|
||||
|
||||
import android.database.Cursor
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
@ -9,7 +8,6 @@ import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.looker.droidify.R
|
||||
import com.looker.droidify.database.CursorOwner
|
||||
import com.looker.droidify.databinding.FragmentLatestXBinding
|
||||
import com.looker.droidify.entity.ProductItem
|
||||
import com.looker.droidify.entity.Repository
|
||||
@ -24,7 +22,7 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder
|
||||
|
||||
class LatestFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
class LatestFragment : MainNavFragmentX() {
|
||||
|
||||
override lateinit var viewModel: MainNavFragmentViewModelX
|
||||
private lateinit var binding: FragmentLatestXBinding
|
||||
@ -88,28 +86,4 @@ class LatestFragment : MainNavFragmentX(), CursorOwner.Callback {
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe { repositories = it }
|
||||
}
|
||||
|
||||
override fun onCursorData(request: CursorOwner.Request, cursor: Cursor?) {
|
||||
// TODO get a list instead of the cursor
|
||||
// TODO use LiveData and observers instead of listeners
|
||||
val appItemList: List<ProductItem> = listOf()
|
||||
updatedItemAdapter.set(appItemList // .filter { !it.hasOneRelease }
|
||||
.map { VAppItem(it, repositories[it.repositoryId]) }
|
||||
)
|
||||
newItemAdapter.set(appItemList // .filter { it.hasOneRelease }
|
||||
.map { HAppItem(it, repositories[it.repositoryId]) }
|
||||
)
|
||||
/*
|
||||
lifecycleScope.launch {
|
||||
repeatOnLifecycle(Lifecycle.State.RESUMED) {
|
||||
emptyText = when {
|
||||
cursor == null -> ""
|
||||
viewModel.searchQuery.first()
|
||||
.isNotEmpty() -> getString(R.string.no_matching_applications_found)
|
||||
else -> getString(R.string.all_applications_up_to_date)
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
@ -2,12 +2,11 @@ package com.looker.droidify.ui.fragments
|
||||
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.looker.droidify.R
|
||||
import com.looker.droidify.database.CursorOwner
|
||||
import com.looker.droidify.entity.ProductItem
|
||||
import com.looker.droidify.ui.activities.MainActivityX
|
||||
import com.looker.droidify.ui.viewmodels.MainNavFragmentViewModelX
|
||||
|
||||
abstract class MainNavFragmentX : Fragment(), CursorOwner.Callback {
|
||||
abstract class MainNavFragmentX : Fragment() {
|
||||
val mainActivityX: MainActivityX
|
||||
get() = requireActivity() as MainActivityX
|
||||
abstract var viewModel: MainNavFragmentViewModelX
|
||||
|
Loading…
x
Reference in New Issue
Block a user