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

Commit 9ee80cd1 authored by Jason Monk's avatar Jason Monk
Browse files

Fix home search

 - Remove old home from search
 - Fix weird threading problem on new home search indexing

Bug: 27249674
Change-Id: I3cfdde7dd3595f5161b5f8c861041c40e800c7bd
parent a2d47fcf
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -48,6 +48,8 @@ import android.net.LinkProperties;
import android.net.Uri;
import android.os.BatteryManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.IBinder;
import android.os.INetworkManagementService;
import android.os.RemoteException;
@@ -1045,10 +1047,18 @@ public final class Utils extends com.android.settingslib.Utils {
    }

    public static List<String> getNonIndexable(int xml, Context context) {
        List<String> ret = new ArrayList<>();
        HandlerThread thread = new HandlerThread("Index_" + xml);
        thread.start();
        final List<String> ret = new ArrayList<>();
        new Handler(thread.getLooper()).post(new Runnable() {
            @Override
            public void run() {
                PreferenceManager manager = new PreferenceManager(context);
                PreferenceScreen screen = manager.inflateFromResource(context, xml, null);
                checkPrefs(screen, ret);
            }
        });
        thread.quitSafely();

        return ret;
    }
+18 −24
Original line number Diff line number Diff line
@@ -21,13 +21,11 @@ import com.android.settings.DateTimeSettings;
import com.android.settings.DevelopmentSettings;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.HomeSettings;
import com.android.settings.LegalSettings;
import com.android.settings.PrivacySettings;
import com.android.settings.ScreenPinningSettings;
import com.android.settings.SecuritySettings;
import com.android.settings.WallpaperTypeSettings;
import com.android.settings.WifiCallingSettings;
import com.android.settings.WirelessSettings;
import com.android.settings.accessibility.AccessibilitySettings;
import com.android.settings.accounts.AccountSettings;
@@ -69,25 +67,24 @@ public final class Ranking {
    public static final int RANK_SIM = 3;
    public static final int RANK_DATA_USAGE = 4;
    public static final int RANK_WIRELESS = 5;
    public static final int RANK_HOME = 6;
    public static final int RANK_DISPLAY = 7;
    public static final int RANK_WALLPAPER = 8;
    public static final int RANK_NOTIFICATIONS = 9;
    public static final int RANK_SOUND = 10;
    public static final int RANK_APPS = 11;
    public static final int RANK_STORAGE = 12;
    public static final int RANK_POWER_USAGE = 13;
    public static final int RANK_USERS = 14;
    public static final int RANK_LOCATION = 15;
    public static final int RANK_SECURITY = 16;
    public static final int RANK_ACCOUNT = 17;
    public static final int RANK_IME = 18;
    public static final int RANK_PRIVACY = 19;
    public static final int RANK_DATE_TIME = 20;
    public static final int RANK_ACCESSIBILITY = 21;
    public static final int RANK_PRINTING = 22;
    public static final int RANK_DEVELOPEMENT = 23;
    public static final int RANK_DEVICE_INFO = 24;
    public static final int RANK_DISPLAY = 6;
    public static final int RANK_WALLPAPER = 7;
    public static final int RANK_NOTIFICATIONS = 8;
    public static final int RANK_SOUND = 9;
    public static final int RANK_APPS = 10;
    public static final int RANK_STORAGE = 11;
    public static final int RANK_POWER_USAGE = 12;
    public static final int RANK_USERS = 13;
    public static final int RANK_LOCATION = 14;
    public static final int RANK_SECURITY = 15;
    public static final int RANK_ACCOUNT = 16;
    public static final int RANK_IME = 17;
    public static final int RANK_PRIVACY = 18;
    public static final int RANK_DATE_TIME = 19;
    public static final int RANK_ACCESSIBILITY = 20;
    public static final int RANK_PRINTING = 21;
    public static final int RANK_DEVELOPEMENT = 22;
    public static final int RANK_DEVICE_INFO = 23;

    public static final int RANK_UNDEFINED = -1;
    public static final int RANK_OTHERS = 1024;
@@ -117,9 +114,6 @@ public final class Ranking {
        // Other wireless settinfs
        sRankMap.put(WirelessSettings.class.getName(), RANK_WIRELESS);

        // Home
        sRankMap.put(HomeSettings.class.getName(), RANK_HOME);

        // Display
        sRankMap.put(DisplaySettings.class.getName(), RANK_DISPLAY);
        sRankMap.put(ScreenZoomSettings.class.getName(), RANK_WIFI);
+0 −9
Original line number Diff line number Diff line
@@ -21,14 +21,12 @@ import com.android.settings.DateTimeSettings;
import com.android.settings.DevelopmentSettings;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.HomeSettings;
import com.android.settings.LegalSettings;
import com.android.settings.PrivacySettings;
import com.android.settings.R;
import com.android.settings.ScreenPinningSettings;
import com.android.settings.SecuritySettings;
import com.android.settings.WallpaperTypeSettings;
import com.android.settings.WifiCallingSettings;
import com.android.settings.WirelessSettings;
import com.android.settings.accessibility.AccessibilitySettings;
import com.android.settings.accounts.AccountSettings;
@@ -124,13 +122,6 @@ public final class SearchIndexableResources {
                        WirelessSettings.class.getName(),
                        R.drawable.ic_settings_more));

        sResMap.put(HomeSettings.class.getName(),
                new SearchIndexableResource(
                        Ranking.getRankForClassName(HomeSettings.class.getName()),
                        NO_DATA_RES_ID,
                        HomeSettings.class.getName(),
                        R.drawable.ic_settings_home));

        sResMap.put(ScreenZoomSettings.class.getName(),
                new SearchIndexableResource(
                        Ranking.getRankForClassName(ScreenZoomSettings.class.getName()),