From 0e02127c7c40636095b12c175c2e3b7a6ad76f23 Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Tue, 14 Mar 2017 09:28:20 -0400 Subject: [PATCH] Temporary fix for themes Will need a better optimization written by someone who knows the code better than me. Bug: 36099320 Test: Try to change theme, twice Change-Id: Ief50bb98725de5a281c13d6d6572867925228d62 --- .../com/android/server/om/OverlayManagerServiceImpl.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/services/core/java/com/android/server/om/OverlayManagerServiceImpl.java b/services/core/java/com/android/server/om/OverlayManagerServiceImpl.java index 5bdef9ea7d493..3705946008f15 100644 --- a/services/core/java/com/android/server/om/OverlayManagerServiceImpl.java +++ b/services/core/java/com/android/server/om/OverlayManagerServiceImpl.java @@ -325,13 +325,11 @@ final class OverlayManagerServiceImpl { // Disable all other overlays. allOverlays.remove(oi); for (int i = 0; i < allOverlays.size(); i++) { - mSettings.setEnabled(allOverlays.get(i).packageName, userId, false); + // TODO: Optimize this to only send updates after all changes. + setEnabled(allOverlays.get(i).packageName, false, userId); } - final PackageInfo targetPackage = - mPackageManager.getPackageInfo(oi.targetPackageName, userId); - mSettings.setEnabled(packageName, userId, enable); - updateState(targetPackage, overlayPackage, userId); + setEnabled(packageName, enable, userId); return true; } catch (OverlayManagerSettings.BadKeyException e) { return false;