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

Commit 0c55b700 authored by Nate Myren's avatar Nate Myren
Browse files

Navigate to app info from unused app page

Ensure clicking on an app on the unused app page links to app info, not
the permissions page

bug: 153607914
Test: go to unused app page, click on an app, and a work profile app.
They should link to the proper user version

Change-Id: I0e6be3a79ec6de0f9d62fc19fd99c7c9dcfb4444
parent ba782507
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -174,8 +174,7 @@ class AutoRevokeFragment : PermissionsFrameFragment() {
                }

                pref.onPreferenceClickListener = Preference.OnPreferenceClickListener { _ ->
                    val args = AppPermissionGroupsFragment.createArgs(pkgName, user, sessionId)
                    viewModel.navigateToAppPermissions(this, args)
                    viewModel.navigateToAppInfo(pkgName, user, sessionId)
                    true
                }

+8 −6
Original line number Diff line number Diff line
@@ -21,19 +21,16 @@ import android.content.Intent
import android.content.pm.ApplicationInfo
import android.content.pm.PackageManager
import android.net.Uri
import android.os.Bundle
import android.os.UserHandle
import android.provider.Settings
import androidx.fragment.app.Fragment
import androidx.lifecycle.ViewModel
import androidx.lifecycle.ViewModelProvider
import androidx.navigation.fragment.findNavController
import com.android.permissioncontroller.permission.data.AutoRevokedPackagesLiveData
import com.android.permissioncontroller.permission.utils.Utils
import com.android.permissioncontroller.R
import com.android.permissioncontroller.permission.data.AllPackageInfosLiveData
import com.android.permissioncontroller.permission.data.SmartAsyncMediatorLiveData
import com.android.permissioncontroller.permission.data.UsageStatsLiveData
import com.android.permissioncontroller.permission.utils.navigateSafe
import kotlinx.coroutines.Job
import java.util.concurrent.TimeUnit.DAYS

@@ -161,8 +158,13 @@ class AutoRevokeViewModel(private val app: Application) : ViewModel() {
        return AutoRevokedPackagesLiveData.isInitialized
    }

    fun navigateToAppPermissions(fragment: Fragment, args: Bundle) {
        fragment.findNavController().navigateSafe(R.id.auto_revoke_to_app_perms, args)
    fun navigateToAppInfo(packageName: String, user: UserHandle, sessionId: Long) {
        val userContext = Utils.getUserContext(app, user)
        val packageUri = Uri.parse("package:$packageName")
        val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, packageUri)
        intent.putExtra(Intent.ACTION_AUTO_REVOKE_PERMISSIONS, sessionId)
        intent.flags = Intent.FLAG_ACTIVITY_NEW_TASK
        userContext.startActivityAsUser(intent, user)
    }

    fun openApp(packageName: String, user: UserHandle) {