Loading src/com/android/permissioncontroller/permission/data/AppPermGroupUiInfoLiveData.kt +1 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ class AppPermGroupUiInfoLiveData private constructor( if (packageInfo == null || permissionGroup == null || permissionState == null) { if (packageInfoLiveData.isInitialized && permGroupLiveData.isInitialized && permissionStateLiveData.isInitialized) { invalidateSingle(Triple(packageName, permGroupName, user)) value = null } return Loading src/com/android/permissioncontroller/permission/data/DataRepository.kt +8 −2 Original line number Diff line number Diff line Loading @@ -105,9 +105,15 @@ abstract class DataRepository<K, V : DataRepository.InactiveTimekeeper> : Compon // Do nothing, but required to override by interface } fun invalidateSingle(key: K) { data.remove(key) } private fun trimInactiveData(threshold: Long) { data.entries.removeAll { (_, value) -> value.timeInactive?.let { it >= threshold } ?: false data.keys.toList().forEach { key -> if (data[key]?.timeInactive?.let { it >= threshold } == true) { data.remove(key) } } } Loading src/com/android/permissioncontroller/permission/data/LightAppPermGroupLiveData.kt +5 −0 Original line number Diff line number Diff line Loading @@ -59,8 +59,11 @@ class LightAppPermGroupLiveData private constructor( updateIfActive() } val key = Triple(packageName, permGroupName, user) addSource(permStateLiveData) { permStates -> if (permStates == null && permStateLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading @@ -69,6 +72,7 @@ class LightAppPermGroupLiveData private constructor( addSource(permGroupLiveData) { permGroup -> if (permGroup == null && permGroupLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading @@ -77,6 +81,7 @@ class LightAppPermGroupLiveData private constructor( addSource(packageInfoLiveData) { packageInfo -> if (packageInfo == null && packageInfoLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading src/com/android/permissioncontroller/permission/data/LightPackageInfoLiveData.kt +1 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,7 @@ class LightPackageInfoLiveData private constructor( PackageManager.GET_PERMISSIONS)) } catch (e: PackageManager.NameNotFoundException) { Log.w(LOG_TAG, "Package \"$packageName\" not found") invalidateSingle(packageName to user) null }) } Loading src/com/android/permissioncontroller/permission/data/PackagePermissionsLiveData.kt +5 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,11 @@ class PackagePermissionsLiveData private constructor( init { addSource(packageInfoLiveData) { if (packageInfoLiveData.isInitialized && packageInfoLiveData.value == null) { invalidateSingle(packageName to user) value = null return@addSource } updateIfActive() } } Loading Loading
src/com/android/permissioncontroller/permission/data/AppPermGroupUiInfoLiveData.kt +1 −0 Original line number Diff line number Diff line Loading @@ -78,6 +78,7 @@ class AppPermGroupUiInfoLiveData private constructor( if (packageInfo == null || permissionGroup == null || permissionState == null) { if (packageInfoLiveData.isInitialized && permGroupLiveData.isInitialized && permissionStateLiveData.isInitialized) { invalidateSingle(Triple(packageName, permGroupName, user)) value = null } return Loading
src/com/android/permissioncontroller/permission/data/DataRepository.kt +8 −2 Original line number Diff line number Diff line Loading @@ -105,9 +105,15 @@ abstract class DataRepository<K, V : DataRepository.InactiveTimekeeper> : Compon // Do nothing, but required to override by interface } fun invalidateSingle(key: K) { data.remove(key) } private fun trimInactiveData(threshold: Long) { data.entries.removeAll { (_, value) -> value.timeInactive?.let { it >= threshold } ?: false data.keys.toList().forEach { key -> if (data[key]?.timeInactive?.let { it >= threshold } == true) { data.remove(key) } } } Loading
src/com/android/permissioncontroller/permission/data/LightAppPermGroupLiveData.kt +5 −0 Original line number Diff line number Diff line Loading @@ -59,8 +59,11 @@ class LightAppPermGroupLiveData private constructor( updateIfActive() } val key = Triple(packageName, permGroupName, user) addSource(permStateLiveData) { permStates -> if (permStates == null && permStateLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading @@ -69,6 +72,7 @@ class LightAppPermGroupLiveData private constructor( addSource(permGroupLiveData) { permGroup -> if (permGroup == null && permGroupLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading @@ -77,6 +81,7 @@ class LightAppPermGroupLiveData private constructor( addSource(packageInfoLiveData) { packageInfo -> if (packageInfo == null && packageInfoLiveData.isInitialized) { invalidateSingle(key) value = null } else { updateIfActive() Loading
src/com/android/permissioncontroller/permission/data/LightPackageInfoLiveData.kt +1 −0 Original line number Diff line number Diff line Loading @@ -79,6 +79,7 @@ class LightPackageInfoLiveData private constructor( PackageManager.GET_PERMISSIONS)) } catch (e: PackageManager.NameNotFoundException) { Log.w(LOG_TAG, "Package \"$packageName\" not found") invalidateSingle(packageName to user) null }) } Loading
src/com/android/permissioncontroller/permission/data/PackagePermissionsLiveData.kt +5 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,11 @@ class PackagePermissionsLiveData private constructor( init { addSource(packageInfoLiveData) { if (packageInfoLiveData.isInitialized && packageInfoLiveData.value == null) { invalidateSingle(packageName to user) value = null return@addSource } updateIfActive() } } Loading