OSDN Git Service

Update the way OMS records details about overlays
[android-x86/packages-apps-Settings.git] / src / com / android / settings / display / ThemePreferenceController.java
index c38ed28..5eeb390 100644 (file)
@@ -28,9 +28,10 @@ import android.support.v7.preference.Preference;
 import android.text.TextUtils;
 
 import com.android.settings.R;
-import com.android.settings.core.PreferenceController;
+import com.android.settings.core.PreferenceControllerMixin;
 import com.android.settings.core.instrumentation.MetricsFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
+import com.android.settingslib.core.AbstractPreferenceController;
 
 import libcore.util.Objects;
 
@@ -39,8 +40,8 @@ import java.util.List;
 
 import static com.android.internal.logging.nano.MetricsProto.MetricsEvent.ACTION_THEME;
 
-public class ThemePreferenceController extends PreferenceController implements
-        Preference.OnPreferenceChangeListener {
+public class ThemePreferenceController extends AbstractPreferenceController implements
+        PreferenceControllerMixin, Preference.OnPreferenceChangeListener {
 
     private static final String KEY_THEME = "theme";
 
@@ -124,7 +125,7 @@ public class ThemePreferenceController extends PreferenceController implements
     private boolean isChangeableOverlay(String packageName) {
         try {
             PackageInfo pi = mPackageManager.getPackageInfo(packageName, 0);
-            return pi != null && !pi.isStaticOverlay;
+            return pi != null && (pi.overlayFlags & PackageInfo.FLAG_OVERLAY_STATIC) == 0;
         } catch (PackageManager.NameNotFoundException e) {
             return false;
         }