summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jaekyun Seok <jaekyun@google.com> 2018-04-04 11:28:21 +0900
committer Jaekyun Seok <jaekyun@google.com> 2018-04-05 07:49:41 +0900
commit5dbcb8a6bb03791f89a2c02e5e91ff31ff841a7c (patch)
treec2c5b4ba36463add37834e80bf7bcb68e94babe5
parentdc4309544d67cdb242e6a818dd63afeb7a6ade93 (diff)
Load static RROs in OverlayManagerService
Only RROs targeting "android" are loaded from AssetManager, and so others should be loaded from OverlayManagerService. The RROs targeting "android" would be ingored as they are to avoid redundant loading. Bug: 76205654 Test: succeeded building and tested with taimen Change-Id: Ibeeb3c3f3338a845b2f4c485305636003d9dbd44
-rw-r--r--services/core/java/com/android/server/om/OverlayManagerSettings.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/om/OverlayManagerSettings.java b/services/core/java/com/android/server/om/OverlayManagerSettings.java
index 863045c2aee7..e176351fcb76 100644
--- a/services/core/java/com/android/server/om/OverlayManagerSettings.java
+++ b/services/core/java/com/android/server/om/OverlayManagerSettings.java
@@ -179,15 +179,19 @@ final class OverlayManagerSettings {
List<OverlayInfo> getOverlaysForTarget(@NonNull final String targetPackageName,
final int userId) {
+ // Static RROs targeting "android" are loaded from AssetManager, and so they should be
+ // ignored in OverlayManagerService.
return selectWhereTarget(targetPackageName, userId)
- .filter((i) -> !i.isStatic())
+ .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName())))
.map(SettingsItem::getOverlayInfo)
.collect(Collectors.toList());
}
ArrayMap<String, List<OverlayInfo>> getOverlaysForUser(final int userId) {
+ // Static RROs targeting "android" are loaded from AssetManager, and so they should be
+ // ignored in OverlayManagerService.
return selectWhereUser(userId)
- .filter((i) -> !i.isStatic())
+ .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName())))
.map(SettingsItem::getOverlayInfo)
.collect(Collectors.groupingBy(info -> info.targetPackageName, ArrayMap::new,
Collectors.toList()));