diff options
Diffstat (limited to 'app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt')
-rw-r--r-- | app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt b/app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt index 4bfee58..7248198 100644 --- a/app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt +++ b/app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt @@ -1,10 +1,7 @@ package moe.yuuta.workmode.access import android.content.pm.ApplicationInfo -import android.os.BaseBundle -import android.os.Bundle -import android.os.PersistableBundle -import android.os.UserManager +import android.os.* import com.elvishew.xlog.XLog import moe.yuuta.workmode.R import moe.yuuta.workmode.suspend.data.TransferableSuspendedApp @@ -33,7 +30,8 @@ internal class AccessLayerUtil(private val accessLayer: AccessLayer) { suspended: Boolean, appExtras: BaseBundle, launcherExtras: BaseBundle, - dialogMessage: String): Array<String> { + dialogMessage: String?, + hostInfo: HostInfo): Array<String> { val packagesWithUserIds = collectUserIDs(packages) val result = mutableListOf<String>() @@ -52,17 +50,23 @@ internal class AccessLayerUtil(private val accessLayer: AccessLayer) { is PersistableBundle -> launcherExtras is Bundle -> BundleUtils.toPersistableBundle(launcherExtras) else -> PersistableBundle() - }, dialogMessage, userId)) + }, if (dialogMessage == null) { + if (userId == hostInfo.userId || + userId == UserHandle.USER_OWNER) accessLayer.mContext.getString(R.string.suspended_message) + else accessLayer.mContext.getString(R.string.suspended_message_managed) + } else dialogMessage, + userId)) } return result.toTypedArray() } - fun suspend(packages: List<TransferableSuspendedApp>, suspended: Boolean): Array<String> = + fun suspend(packages: List<TransferableSuspendedApp>, suspended: Boolean, hostInfo: HostInfo): Array<String> = suspend(packages, suspended, Bundle(), - PersistableBundle(), // Removed because there is an unknown bug which prevents from writing launcher extras from the owner (?) - accessLayer.mContext.getString(R.string.suspended_message)) + PersistableBundle(), // Removed because there is an unknown bug which prevents from writing launcher extras from the owner (?) + null, + hostInfo) fun getSuspendedPackageAppExtras(packageInfo: TransferableSuspendedApp): PersistableBundle? = accessLayer.getSuspendedPackageAppExtras(packageName = packageInfo.packageName, |