@@ -29,7 +29,7 @@ import ca.allanwang.kau.utils.setPaddingBottom
29
29
import ca.allanwang.kau.utils.toast
30
30
import com.bumptech.glide.Glide
31
31
import com.pluscubed.recyclerfastscroll.RecyclerFastScroller
32
- import jahirfiquitiva.libs.archhelpers.extensions.lazyViewModel
32
+ import jahirfiquitiva.libs.archhelpers.extensions.getViewModel
33
33
import jahirfiquitiva.libs.archhelpers.ui.fragments.ViewModelFragment
34
34
import jahirfiquitiva.libs.frames.helpers.extensions.jfilter
35
35
import jahirfiquitiva.libs.frames.helpers.extensions.mdDialog
@@ -41,12 +41,12 @@ import jahirfiquitiva.libs.kext.extensions.hasContent
41
41
import jahirfiquitiva.libs.kext.extensions.int
42
42
import jahirfiquitiva.libs.kext.extensions.isLowRamDevice
43
43
import jahirfiquitiva.libs.kuper.R
44
- import jahirfiquitiva.libs.kuper.models.KuperKomponent
45
44
import jahirfiquitiva.libs.kuper.helpers.utils.KL
46
45
import jahirfiquitiva.libs.kuper.helpers.utils.KLCK_PACKAGE
47
46
import jahirfiquitiva.libs.kuper.helpers.utils.KLWP_PACKAGE
48
47
import jahirfiquitiva.libs.kuper.helpers.utils.KWGT_PACKAGE
49
48
import jahirfiquitiva.libs.kuper.helpers.utils.ZOOPER_PACKAGE
49
+ import jahirfiquitiva.libs.kuper.models.KuperKomponent
50
50
import jahirfiquitiva.libs.kuper.providers.viewmodels.KuperViewModel
51
51
import jahirfiquitiva.libs.kuper.ui.activities.KuperActivity
52
52
import jahirfiquitiva.libs.kuper.ui.adapters.KuperAdapter
@@ -56,11 +56,9 @@ import jahirfiquitiva.libs.kuper.ui.decorations.SectionedGridSpacingDecoration
56
56
@Suppress(" DEPRECATION" )
57
57
class KuperFragment : ViewModelFragment <KuperKomponent >() {
58
58
59
- private val kuperViewModel: KuperViewModel by lazyViewModel()
60
-
59
+ private var kuperViewModel: KuperViewModel ? = null
61
60
private var recyclerView: EmptyViewRecyclerView ? = null
62
61
private var fastScroller: RecyclerFastScroller ? = null
63
-
64
62
private var kuperAdapter: KuperAdapter ? = null
65
63
66
64
private val wallpaper: Drawable ? by lazy {
@@ -124,23 +122,19 @@ class KuperFragment : ViewModelFragment<KuperKomponent>() {
124
122
fastScroller?.attachRecyclerView(this )
125
123
}
126
124
}
127
-
128
- recyclerView?.state = EmptyViewRecyclerView .State .LOADING
129
-
130
- postDelayed(5 ) { loadDataFromViewModel() }
131
125
}
132
126
133
127
fun applyFilter (filter : String = "", closed : Boolean = false) {
134
128
if (filter.hasContent()) {
135
129
recyclerView?.setEmptyImage(R .drawable.no_results)
136
130
recyclerView?.setEmptyText(R .string.search_no_results)
137
- kuperAdapter?.setItems(ArrayList (kuperViewModel.getData().orEmpty()).jfilter {
131
+ kuperAdapter?.setItems(ArrayList (kuperViewModel? .getData().orEmpty()).jfilter {
138
132
it.name.contains(filter, true ) || it.type.toString().contains(filter, true )
139
133
})
140
134
} else {
141
135
recyclerView?.setEmptyImage(R .drawable.empty_section)
142
136
recyclerView?.setEmptyText(R .string.empty_section)
143
- kuperAdapter?.setItems(ArrayList (kuperViewModel.getData().orEmpty()))
137
+ kuperAdapter?.setItems(ArrayList (kuperViewModel? .getData().orEmpty()))
144
138
}
145
139
if (! closed)
146
140
scrollToTop()
@@ -179,24 +173,24 @@ class KuperFragment : ViewModelFragment<KuperKomponent>() {
179
173
}
180
174
}
181
175
176
+ override fun initViewModels () {
177
+ kuperViewModel = getViewModel()
178
+ }
179
+
182
180
override fun loadDataFromViewModel () {
183
- activity?.let { kuperViewModel.loadData(it) }
181
+ activity?.let { kuperViewModel? .loadData(it) }
184
182
}
185
183
186
- override fun autoStartLoad () = false
184
+ override fun autoStartLoad () = true
187
185
188
186
override fun registerObservers () {
189
- kuperViewModel.observe(this ) {
187
+ kuperViewModel? .observe(this ) {
190
188
recyclerView?.state = EmptyViewRecyclerView .State .NORMAL
191
189
kuperAdapter?.setItems(it)
192
190
(activity as ? KuperActivity )?.destroyDialog()
193
191
}
194
192
}
195
193
196
- override fun unregisterObservers () {
197
- kuperViewModel.destroy(this )
198
- }
199
-
200
194
override fun setUserVisibleHint (isVisibleToUser : Boolean ) {
201
195
super .setUserVisibleHint(isVisibleToUser)
202
196
if (isVisibleToUser) {
0 commit comments