Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9c424dd6 authored by Hasib Prince's avatar Hasib Prince
Browse files

App Lounge: fixed app cancel in detail page

parent 2ed126bb
Loading
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -49,7 +49,6 @@ import foundation.e.apps.utils.modules.CommonUtilsModule
import kotlinx.coroutines.launch
import kotlinx.coroutines.launch
import java.io.File
import java.io.File
import java.util.UUID
import java.util.UUID
import javax.inject.Inject


@AndroidEntryPoint
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
class MainActivity : AppCompatActivity() {
+1 −2
Original line number Original line Diff line number Diff line
@@ -647,8 +647,7 @@ class FusedAPIImpl @Inject constructor(
        if (this.status != Status.INSTALLATION_ISSUE) {
        if (this.status != Status.INSTALLATION_ISSUE) {
            this.status = if (this.is_pwa) {
            this.status = if (this.is_pwa) {
                pwaManagerModule.getPwaStatus(this)
                pwaManagerModule.getPwaStatus(this)
            }
            } else {
            else {
                pkgManagerModule.getPackageStatus(this.package_name, this.latest_version_code)
                pkgManagerModule.getPackageStatus(this.package_name, this.latest_version_code)
            }
            }
        }
        }
+1 −5
Original line number Original line Diff line number Diff line
@@ -132,11 +132,7 @@ class ApplicationFragment : Fragment(R.layout.fragment_application) {
        binding.applicationLayout.visibility = View.INVISIBLE
        binding.applicationLayout.visibility = View.INVISIBLE


        mainActivityViewModel.downloadList.observe(viewLifecycleOwner) { list ->
        mainActivityViewModel.downloadList.observe(viewLifecycleOwner) { list ->
            list.forEach {
            applicationViewModel.updateApplicationStatus(list)
                if (it.origin == args.origin && (it.packageName == args.packageName || it.id == args.id)) {
                    applicationViewModel.appStatus.value = it.status
                }
            }
        }
        }


        applicationViewModel.fusedApp.observe(viewLifecycleOwner) {
        applicationViewModel.fusedApp.observe(viewLifecycleOwner) {
+15 −1
Original line number Original line Diff line number Diff line
@@ -25,9 +25,11 @@ import com.aurora.gplayapi.data.models.AuthData
import dagger.hilt.android.lifecycle.HiltViewModel
import dagger.hilt.android.lifecycle.HiltViewModel
import foundation.e.apps.api.fused.FusedAPIRepository
import foundation.e.apps.api.fused.FusedAPIRepository
import foundation.e.apps.api.fused.data.FusedApp
import foundation.e.apps.api.fused.data.FusedApp
import foundation.e.apps.manager.database.fusedDownload.FusedDownload
import foundation.e.apps.manager.download.data.DownloadProgress
import foundation.e.apps.manager.download.data.DownloadProgress
import foundation.e.apps.manager.download.data.DownloadProgressLD
import foundation.e.apps.manager.download.data.DownloadProgressLD
import foundation.e.apps.manager.fused.FusedManagerRepository
import foundation.e.apps.manager.fused.FusedManagerRepository
import foundation.e.apps.manager.pkg.PkgManagerModule
import foundation.e.apps.utils.enums.Origin
import foundation.e.apps.utils.enums.Origin
import foundation.e.apps.utils.enums.Status
import foundation.e.apps.utils.enums.Status
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.Dispatchers
@@ -38,7 +40,8 @@ import javax.inject.Inject
class ApplicationViewModel @Inject constructor(
class ApplicationViewModel @Inject constructor(
    downloadProgressLD: DownloadProgressLD,
    downloadProgressLD: DownloadProgressLD,
    private val fusedAPIRepository: FusedAPIRepository,
    private val fusedAPIRepository: FusedAPIRepository,
    private val fusedManagerRepository: FusedManagerRepository
    private val fusedManagerRepository: FusedManagerRepository,
    private val pkgManagerModule: PkgManagerModule
) : ViewModel() {
) : ViewModel() {


    val fusedApp: MutableLiveData<FusedApp> = MutableLiveData()
    val fusedApp: MutableLiveData<FusedApp> = MutableLiveData()
@@ -99,4 +102,15 @@ class ApplicationViewModel @Inject constructor(
        }
        }
        return Pair(1, 0)
        return Pair(1, 0)
    }
    }

    fun updateApplicationStatus(downloadList: List<FusedDownload>) {
        fusedApp.value?.let { app ->
            val downloadingItem =
                downloadList.find { it.origin == app.origin && (it.packageName == app.package_name || it.id == app.package_name) }
            appStatus.value = downloadingItem?.status ?: pkgManagerModule.getPackageStatus(
                app.package_name,
                app.latest_version_code
            )
        }
    }
}
}
+6 −4
Original line number Original line Diff line number Diff line
@@ -23,7 +23,9 @@ import android.content.Intent
import dagger.hilt.android.AndroidEntryPoint
import dagger.hilt.android.AndroidEntryPoint
import foundation.e.apps.manager.database.DatabaseRepository
import foundation.e.apps.manager.database.DatabaseRepository
import foundation.e.apps.utils.enums.Status
import foundation.e.apps.utils.enums.Status
import kotlinx.coroutines.*
import kotlinx.coroutines.DelicateCoroutinesApi
import kotlinx.coroutines.GlobalScope
import kotlinx.coroutines.launch
import javax.inject.Inject
import javax.inject.Inject


/**
/**
Loading