Skip to content

Commit 26d2669

Browse files
authored
4664: Moved ImageFragment to ViewBinding (#5067)
1 parent 64d4ffc commit 26d2669

File tree

1 file changed

+21
-16
lines changed
  • app/src/main/java/fr/free/nrw/commons/customselector/ui/selector

1 file changed

+21
-16
lines changed

app/src/main/java/fr/free/nrw/commons/customselector/ui/selector/ImageFragment.kt

+21-16
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import androidx.lifecycle.Observer
1414
import androidx.lifecycle.ViewModelProvider
1515
import androidx.recyclerview.widget.GridLayoutManager
1616
import androidx.recyclerview.widget.RecyclerView
17-
import fr.free.nrw.commons.R
1817
import fr.free.nrw.commons.customselector.database.NotForUploadStatusDao
1918
import fr.free.nrw.commons.customselector.database.UploadedStatusDao
2019
import fr.free.nrw.commons.customselector.helper.ImageHelper
@@ -27,13 +26,12 @@ import fr.free.nrw.commons.customselector.model.CallbackStatus
2726
import fr.free.nrw.commons.customselector.model.Image
2827
import fr.free.nrw.commons.customselector.model.Result
2928
import fr.free.nrw.commons.customselector.ui.adapter.ImageAdapter
29+
import fr.free.nrw.commons.databinding.FragmentCustomSelectorBinding
3030
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment
3131
import fr.free.nrw.commons.media.MediaClient
3232
import fr.free.nrw.commons.theme.BaseActivity
3333
import fr.free.nrw.commons.upload.FileProcessor
3434
import fr.free.nrw.commons.upload.FileUtilsWrapper
35-
import kotlinx.android.synthetic.main.fragment_custom_selector.*
36-
import kotlinx.android.synthetic.main.fragment_custom_selector.view.*
3735
import java.util.*
3836
import javax.inject.Inject
3937
import kotlin.collections.ArrayList
@@ -43,6 +41,9 @@ import kotlin.collections.ArrayList
4341
*/
4442
class ImageFragment: CommonsDaggerSupportFragment(), RefreshUIListener, PassDataListener {
4543

44+
private var _binding: FragmentCustomSelectorBinding? = null
45+
private val binding get() = _binding
46+
4647
/**
4748
* Current bucketId.
4849
*/
@@ -64,7 +65,7 @@ class ImageFragment: CommonsDaggerSupportFragment(), RefreshUIListener, PassData
6465
private var selectorRV: RecyclerView? = null
6566
private var loader: ProgressBar? = null
6667
private var switch: Switch? = null
67-
lateinit var filteredImages: ArrayList<Image>;
68+
lateinit var filteredImages: ArrayList<Image>
6869

6970
/**
7071
* Stores all images
@@ -171,33 +172,32 @@ class ImageFragment: CommonsDaggerSupportFragment(), RefreshUIListener, PassData
171172
* SetUp recycler view.
172173
*/
173174
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
174-
175-
val root = inflater.inflate(R.layout.fragment_custom_selector, container, false)
175+
_binding = FragmentCustomSelectorBinding.inflate(inflater, container, false)
176176
imageAdapter = ImageAdapter(requireActivity(), activity as ImageSelectListener, imageLoader!!)
177177
gridLayoutManager = GridLayoutManager(context,getSpanCount())
178-
with(root.selector_rv){
179-
this.layoutManager = gridLayoutManager
180-
setHasFixedSize(true)
181-
this.adapter = imageAdapter
178+
with(binding?.selectorRv){
179+
this?.layoutManager = gridLayoutManager
180+
this?.setHasFixedSize(true)
181+
this?.adapter = imageAdapter
182182
}
183183

184184
viewModel?.result?.observe(viewLifecycleOwner, Observer{
185185
handleResult(it)
186186
})
187187

188-
switch = root.switchWidget
188+
switch = binding?.switchWidget
189189
switch?.visibility = View.VISIBLE
190190
switch?.setOnCheckedChangeListener { _, isChecked -> onChangeSwitchState(isChecked) }
191-
selectorRV = root.selector_rv
192-
loader = root.loader
193-
progressLayout = root.progressLayout
191+
selectorRV = binding?.selectorRv
192+
loader = binding?.loader
193+
progressLayout = binding?.progressLayout
194194

195195
val sharedPreferences: SharedPreferences =
196196
requireContext().getSharedPreferences(CUSTOM_SELECTOR_PREFERENCE_KEY, MODE_PRIVATE)
197197
showAlreadyActionedImages = sharedPreferences.getBoolean(SHOW_ALREADY_ACTIONED_IMAGES_PREFERENCE_KEY, true)
198198
switch?.isChecked = showAlreadyActionedImages
199199

200-
return root
200+
return binding?.root
201201
}
202202

203203
private fun onChangeSwitchState(checked: Boolean) {
@@ -252,7 +252,7 @@ class ImageFragment: CommonsDaggerSupportFragment(), RefreshUIListener, PassData
252252
}
253253
}
254254
else{
255-
empty_text?.let {
255+
binding?.emptyText?.let {
256256
it.visibility = View.VISIBLE
257257
}
258258
selectorRV?.let{
@@ -311,6 +311,11 @@ class ImageFragment: CommonsDaggerSupportFragment(), RefreshUIListener, PassData
311311
super.onDestroy()
312312
}
313313

314+
override fun onDestroyView() {
315+
_binding = null
316+
super.onDestroyView()
317+
}
318+
314319
override fun refresh() {
315320
imageAdapter.refresh(filteredImages, allImages)
316321
}

0 commit comments

Comments
 (0)