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

Commit 7eacc082 authored by Hasib Prince's avatar Hasib Prince
Browse files

App Lounge: fixed notification showing on cancel

parent 704ffa6e
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import androidx.work.Configuration
import dagger.hilt.android.HiltAndroidApp
import foundation.e.apps.manager.pkg.PkgManagerBR
import foundation.e.apps.manager.pkg.PkgManagerModule
import foundation.e.apps.manager.workmanager.InstallWorkManager
import kotlinx.coroutines.DelicateCoroutinesApi
import java.util.concurrent.Executors
import javax.inject.Inject
@@ -40,6 +41,7 @@ class AppLoungeApplication : Application(), Configuration.Provider {
    override fun onCreate() {
        super.onCreate()

        InstallWorkManager.context = this
        // Register broadcast receiver for package manager
        val pkgManagerBR = object : PkgManagerBR() {}
        registerReceiver(pkgManagerBR, pkgManagerModule.getFilter())
+2 −2
Original line number Diff line number Diff line
@@ -239,7 +239,7 @@ class MainActivity : AppCompatActivity() {
                return@launch
            }
            viewModel.updateAwaiting(it)
            InstallWorkManager.enqueueWork(applicationContext, it)
            InstallWorkManager.enqueueWork(it)
            Log.d(TAG, "===> onCreate: AWAITING ${it.name}")
        }
    }
@@ -251,7 +251,7 @@ class MainActivity : AppCompatActivity() {
        lifecycleScope.launch {
            val fusedDownload = viewModel.updateAwaitingForPurchasedApp(it)
            if (fusedDownload != null) {
                InstallWorkManager.enqueueWork(applicationContext, fusedDownload)
                InstallWorkManager.enqueueWork(fusedDownload)
            } else {
                showSnackbarMessage(getString(R.string.paid_app_anonymous_message))
            }
+2 −0
Original line number Diff line number Diff line
@@ -40,6 +40,7 @@ import foundation.e.apps.api.fused.data.FusedApp
import foundation.e.apps.manager.database.fusedDownload.FusedDownload
import foundation.e.apps.manager.fused.FusedManagerRepository
import foundation.e.apps.manager.pkg.PkgManagerModule
import foundation.e.apps.manager.workmanager.InstallWorkManager
import foundation.e.apps.utils.enums.Origin
import foundation.e.apps.utils.enums.Status
import foundation.e.apps.utils.enums.Type
@@ -271,6 +272,7 @@ class MainActivityViewModel @Inject constructor(
            val fusedDownload =
                fusedManagerRepository.getFusedDownload(packageName = app.package_name)
            fusedManagerRepository.cancelDownload(fusedDownload)
            InstallWorkManager.cancelWork(app.name)
        }
    }

+1 −1
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@ import androidx.room.Update
@Dao
interface FusedDownloadDAO {

    @Insert(onConflict = OnConflictStrategy.IGNORE)
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    suspend fun addDownload(fusedDownload: FusedDownload)

    @Query("SELECT * FROM fuseddownload")
+8 −2
Original line number Diff line number Diff line
package foundation.e.apps.manager.workmanager

import android.content.Context
import android.app.Application
import androidx.work.Data
import androidx.work.ExistingWorkPolicy
import androidx.work.OneTimeWorkRequestBuilder
@@ -9,7 +9,9 @@ import foundation.e.apps.manager.database.fusedDownload.FusedDownload

object InstallWorkManager {
    const val INSTALL_WORK_NAME = "APP_LOUNGE_INSTALL_APP"
    fun enqueueWork(context: Context, fusedDownload: FusedDownload) {
    lateinit var context: Application

    fun enqueueWork(fusedDownload: FusedDownload) {
        WorkManager.getInstance(context).enqueueUniqueWork(
            INSTALL_WORK_NAME,
            ExistingWorkPolicy.APPEND_OR_REPLACE,
@@ -21,4 +23,8 @@ object InstallWorkManager {
                .build()
        )
    }

    fun cancelWork(tag: String) {
        WorkManager.getInstance(context).cancelAllWorkByTag(tag)
    }
}
Loading