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

Commit 09076e5f authored by Fabrice Di Meglio's avatar Fabrice Di Meglio Committed by Android (Google) Code Review
Browse files

Merge "Fix bug #16896118 SIM cards should ONLY appear in search results for...

Merge "Fix bug #16896118 SIM cards should ONLY appear in search results for devices with 2+ SIM slots" into lmp-dev
parents dc16286f 22a2a49b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1042,7 +1042,7 @@ public class SettingsActivity extends Activity
                            }

                            // Show the SIM Cards setting if there are more than 2 SIMs installed.
                            if(tile.id != R.id.sim_settings || SimSettings.showSimCardScreen(this)){
                            if(tile.id != R.id.sim_settings || Utils.showSimCardTile(this)){
                                category.addTile(tile);
                            }

+12 −0
Original line number Diff line number Diff line
@@ -820,4 +820,16 @@ public final class Utils {
        if (icon == null) return null;
        return CircleFramedDrawable.getInstance(context, icon);
    }

    /**
     * Return whether or not the user should have a SIM Cards option in Settings.
     * TODO: Change back to returning true if count is greater than one after testing.
     * TODO: See bug 16533525.
     */
    public static boolean showSimCardTile(Context context) {
        final TelephonyManager tm =
                (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

        return tm.getSimCount() > 0;
    }
}
+1 −1
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@ public final class SearchIndexableResources {
        sResMap.put(SimSettings.class.getName(),
                new SearchIndexableResource(
                        Ranking.getRankForClassName(SimSettings.class.getName()),
                        R.xml.sim_settings,
                        NO_DATA_RES_ID,
                        SimSettings.class.getName(),
                        R.drawable.ic_sim_sd));

+24 −12
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.sim;

import android.provider.SearchIndexableResource;
import com.android.settings.R;

import android.app.AlertDialog;
@@ -55,6 +56,7 @@ import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.TelephonyIntents;
import com.android.settings.RestrictedSettingsFragment;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import com.android.settings.notification.DropDownPreference;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
@@ -86,18 +88,6 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
    private SubInfoRecord mCalls = null;
    private SubInfoRecord mSMS = null;

    /**
     * Return whether or not the user should have a SIM Cards option in Settings.
     * TODO: Change back to returning true if count is greater than one after testing.
     * TODO: See bug 16533525.
     */
    public static boolean showSimCardScreen(Context context) {
        final TelephonyManager tm =
            (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

        return tm.getSimCount() > 0;
    }

    public SimSettings() {
        super(DISALLOW_CONFIG_SIM);
    }
@@ -369,4 +359,26 @@ public class SimSettings extends RestrictedSettingsFragment implements Indexable
            builder.create().show();
        }
    }

    /**
     * For search
     */
    public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
            new BaseSearchIndexProvider() {
                @Override
                public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
                        boolean enabled) {
                    ArrayList<SearchIndexableResource> result =
                            new ArrayList<SearchIndexableResource>();

                    if (Utils.showSimCardTile(context)) {
                        SearchIndexableResource sir = new SearchIndexableResource(context);
                        sir.xmlResId = R.xml.sim_settings;
                        result.add(sir);
                    }

                    return result;
                }
            };

}