mirror of
https://github.com/whyorean/AuroraStore.git
synced 2026-06-15 19:20:53 -04:00
Pass app as a parcel to AppDetailsFragment
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -41,7 +41,7 @@ open class BaseFragment : Fragment {
|
||||
|
||||
fun openDetailsFragment(app: App) {
|
||||
findNavController().navigate(
|
||||
MobileNavigationDirections.actionGlobalAppDetailsFragment(app.packageName)
|
||||
MobileNavigationDirections.actionGlobalAppDetailsFragment(app.packageName, app)
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
@@ -254,10 +254,17 @@ class AppDetailsFragment : BaseFragment(R.layout.fragment_details) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
_binding = FragmentDetailsBinding.bind(view)
|
||||
|
||||
// TODO: Parcel app class to better handle onNewIntent fun
|
||||
isExternal = true
|
||||
app = App(args.packageName)
|
||||
fetchCompleteApp()
|
||||
if (args.app != null) {
|
||||
app = args.app!!
|
||||
isInstalled = PackageUtil.isInstalled(requireContext(), app.packageName)
|
||||
|
||||
inflatePartialApp()
|
||||
fetchCompleteApp()
|
||||
} else {
|
||||
isExternal = true
|
||||
app = App(args.packageName)
|
||||
fetchCompleteApp()
|
||||
}
|
||||
|
||||
// Toolbar
|
||||
binding.layoutDetailsToolbar.toolbar.apply {
|
||||
@@ -312,34 +319,6 @@ class AppDetailsFragment : BaseFragment(R.layout.fragment_details) {
|
||||
super.onResume()
|
||||
}
|
||||
|
||||
private fun onNewIntent(intent: Intent) {
|
||||
if (intent.scheme != null && (intent.scheme == "market" || intent.scheme == "http" || intent.scheme == "https")) {
|
||||
val packageName = intent.data!!.getQueryParameter("id")
|
||||
val packageVersion = intent.data!!.getQueryParameter("v")
|
||||
if (packageName.isNullOrEmpty()) {
|
||||
activity?.finishAfterTransition()
|
||||
} else {
|
||||
isExternal = true
|
||||
app = App(packageName)
|
||||
if (!packageVersion.isNullOrEmpty()) {
|
||||
app.versionCode = packageVersion.toInt()
|
||||
}
|
||||
fetchCompleteApp()
|
||||
}
|
||||
} else {
|
||||
val rawApp: String? = intent.getStringExtra(Constants.STRING_EXTRA)
|
||||
if (rawApp != null) {
|
||||
app = gson.fromJson(rawApp, App::class.java)
|
||||
isInstalled = PackageUtil.isInstalled(requireContext(), app.packageName)
|
||||
|
||||
inflatePartialApp()
|
||||
fetchCompleteApp()
|
||||
} else {
|
||||
activity?.finishAfterTransition()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun attachActions() {
|
||||
flip(0)
|
||||
checkAndSetupInstall()
|
||||
|
||||
@@ -120,6 +120,11 @@
|
||||
<action
|
||||
android:id="@+id/action_appDetailsFragment_to_detailsExodusFragment"
|
||||
app:destination="@id/detailsExodusFragment" />
|
||||
<argument
|
||||
android:name="app"
|
||||
app:argType="com.aurora.gplayapi.data.models.App"
|
||||
app:nullable="true"
|
||||
android:defaultValue="@null" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/categoryBrowseFragment"
|
||||
|
||||
Reference in New Issue
Block a user