aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt
diff options
context:
space:
mode:
authorYuutaW <17158086+trumeet@users.noreply.github.com>2019-03-30 16:28:27 -0700
committerYuutaW <17158086+Trumeet@users.noreply.github.com>2019-03-30 16:28:27 -0700
commitf02787275d311af463d5250c5998f541e5529982 (patch)
tree38d756e1569a4733c0227e4947df02bad4dda591 /app/src/main/java/moe/yuuta/workmode/access/AccessLayerUtil.kt
parent06fbdcac173aea88cb4d02c4806866c83e720307 (diff)
downloadWorkMode-f02787275d311af463d5250c5998f541e5529982.tar
WorkMode-f02787275d311af463d5250c5998f541e5529982.tar.gz
WorkMode-f02787275d311af463d5250c5998f541e5529982.tar.bz2
WorkMode-f02787275d311af463d5250c5998f541e5529982.zip
feat(app): give non-owner user a notice for apps suspended by owner
Signed-off-by: YuutaW <17158086+Trumeet@users.noreply.github.com>
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.kt22
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,