ScreenshotFragment: Pass artwork as array of parcel
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -89,7 +89,7 @@ open class BaseFragment : Fragment {
|
|||||||
findNavController().navigate(
|
findNavController().navigate(
|
||||||
MobileNavigationDirections.actionGlobalScreenshotFragment(
|
MobileNavigationDirections.actionGlobalScreenshotFragment(
|
||||||
position,
|
position,
|
||||||
gson.toJson(app.screenshots)
|
app.screenshots.toTypedArray()
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ package com.aurora.store.view.ui.details
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.navigation.fragment.findNavController
|
import androidx.navigation.fragment.findNavController
|
||||||
import androidx.navigation.fragment.navArgs
|
import androidx.navigation.fragment.navArgs
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
@@ -31,10 +32,8 @@ import com.aurora.gplayapi.data.models.Artwork
|
|||||||
import com.aurora.store.R
|
import com.aurora.store.R
|
||||||
import com.aurora.store.databinding.FragmentScreenshotBinding
|
import com.aurora.store.databinding.FragmentScreenshotBinding
|
||||||
import com.aurora.store.view.epoxy.views.details.LargeScreenshotViewModel_
|
import com.aurora.store.view.epoxy.views.details.LargeScreenshotViewModel_
|
||||||
import com.aurora.store.view.ui.commons.BaseFragment
|
|
||||||
import com.google.gson.reflect.TypeToken
|
|
||||||
|
|
||||||
class ScreenshotFragment : BaseFragment(R.layout.fragment_screenshot) {
|
class ScreenshotFragment : Fragment(R.layout.fragment_screenshot) {
|
||||||
|
|
||||||
private var _binding: FragmentScreenshotBinding? = null
|
private var _binding: FragmentScreenshotBinding? = null
|
||||||
private val binding: FragmentScreenshotBinding
|
private val binding: FragmentScreenshotBinding
|
||||||
@@ -42,8 +41,6 @@ class ScreenshotFragment : BaseFragment(R.layout.fragment_screenshot) {
|
|||||||
|
|
||||||
private val args: ScreenshotFragmentArgs by navArgs()
|
private val args: ScreenshotFragmentArgs by navArgs()
|
||||||
|
|
||||||
private lateinit var artworks: MutableList<Artwork>
|
|
||||||
|
|
||||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
super.onViewCreated(view, savedInstanceState)
|
||||||
_binding = FragmentScreenshotBinding.bind(view)
|
_binding = FragmentScreenshotBinding.bind(view)
|
||||||
@@ -61,8 +58,7 @@ class ScreenshotFragment : BaseFragment(R.layout.fragment_screenshot) {
|
|||||||
PagerSnapHelper().attachToRecyclerView(this)
|
PagerSnapHelper().attachToRecyclerView(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
artworks = gson.fromJson(args.rawArtWorks, object : TypeToken<List<Artwork?>?>() {}.type)
|
updateController(args.arrayOfArtwork, args.position)
|
||||||
updateController(artworks, args.position)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onDestroyView() {
|
override fun onDestroyView() {
|
||||||
@@ -70,7 +66,7 @@ class ScreenshotFragment : BaseFragment(R.layout.fragment_screenshot) {
|
|||||||
_binding = null
|
_binding = null
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateController(artworks: MutableList<Artwork>, position: Int) {
|
private fun updateController(artworks: Array<Artwork>, position: Int) {
|
||||||
binding.recyclerView.withModels {
|
binding.recyclerView.withModels {
|
||||||
artworks.forEach {
|
artworks.forEach {
|
||||||
add(
|
add(
|
||||||
|
|||||||
@@ -167,8 +167,8 @@
|
|||||||
android:name="position"
|
android:name="position"
|
||||||
app:argType="integer" />
|
app:argType="integer" />
|
||||||
<argument
|
<argument
|
||||||
android:name="rawArtWorks"
|
android:name="arrayOfArtwork"
|
||||||
app:argType="string" />
|
app:argType="com.aurora.gplayapi.data.models.Artwork[]" />
|
||||||
</fragment>
|
</fragment>
|
||||||
<fragment
|
<fragment
|
||||||
android:id="@+id/devProfileFragment"
|
android:id="@+id/devProfileFragment"
|
||||||
|
|||||||
Reference in New Issue
Block a user