Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5862c1ef authored by Jason Monk's avatar Jason Monk
Browse files

Fix disabling of tiles that are not relevant

 - Fix restricted user tiles being disabled
 - Call new better method in SettingsDrawerActivity for disabling

Change-Id: I2fb6ddd3d505189d2b6d96c0a1039291b80a2f70
Fixes: 29080209
parent 48229d77
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -1896,8 +1896,7 @@
                android:label="@string/development_settings_title"
                android:icon="@drawable/ic_settings_development"
                android:taskAffinity="com.android.settings"
                android:parentActivityName="Settings"
                android:enabled="false">
                android:parentActivityName="Settings">
            <intent-filter android:priority="1">
                <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
                <action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS" />
@@ -2442,8 +2441,7 @@
        <activity android:name="Settings$PaymentSettingsActivity"
                android:label="@string/nfc_payment_settings_title"
                android:icon="@drawable/ic_settings_nfc_payment"
                android:taskAffinity=""
                android:enabled="false">
                android:taskAffinity="">
            <intent-filter android:priority="1">
                <action android:name="android.settings.NFC_PAYMENT_SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
@@ -2728,7 +2726,6 @@
        <activity android:name="Settings$SimSettingsActivity"
                android:label="@string/sim_settings_title"
                android:icon="@drawable/ic_settings_sim"
                android:enabled="false"
                android:taskAffinity="">
            <intent-filter android:priority="1">
                <action android:name="com.android.settings.sim.SIM_SUB_INFO_SETTINGS" />
+3 −10
Original line number Diff line number Diff line
@@ -1080,7 +1080,7 @@ public class SettingsActivity extends SettingsDrawerActivity
            for (DashboardCategory category : categories) {
                for (Tile tile : category.tiles) {
                    ComponentName component = tile.intent.getComponent();
                    if (packageName.equals(component)&& !ArrayUtils.contains(
                    if (packageName.equals(component.getPackageName()) && !ArrayUtils.contains(
                            SETTINGS_FOR_RESTRICTED, component.getClassName())) {
                        setTileEnabled(component, false, isAdmin, pm);
                    }
@@ -1091,18 +1091,11 @@ public class SettingsActivity extends SettingsDrawerActivity

    private void setTileEnabled(ComponentName component, boolean enabled, boolean isAdmin,
                                PackageManager pm) {
        if (UserHandle.MU_ENABLED && !isAdmin
        if (UserHandle.MU_ENABLED && !isAdmin && getPackageName().equals(component.getPackageName())
                && !ArrayUtils.contains(SETTINGS_FOR_RESTRICTED, component.getClassName())) {
            enabled = false;
        }
        int state = pm.getComponentEnabledSetting(component);
        boolean isEnabled = state == PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
        if (isEnabled != enabled) {
            pm.setComponentEnabledSetting(component, enabled
                    ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED
                    : PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
                    PackageManager.DONT_KILL_APP);
        }
        setTileEnabled(component, enabled);
    }

    private void getMetaData() {