Add a few pages to search index.
- Data saver - A few special permission access pages - Picture-in-picture - Premium sms - do not disturb access - And a unrelated cleanup: move EmptyTextFragment from notification/ to widget/ Bug: 70720645 Test: robotests Change-Id: I6a87f712bf81f9fd32fa9a3826fba851ca748409
This commit is contained in:
@@ -15,7 +15,10 @@
|
||||
package com.android.settings.datausage;
|
||||
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.telephony.SubscriptionManager;
|
||||
import android.widget.Switch;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
@@ -24,17 +27,22 @@ import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.SettingsPreferenceFragment;
|
||||
import com.android.settings.applications.AppStateBaseBridge.Callback;
|
||||
import com.android.settings.datausage.DataSaverBackend.Listener;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settings.search.Indexable;
|
||||
import com.android.settings.widget.SwitchBar;
|
||||
import com.android.settings.widget.SwitchBar.OnSwitchChangeListener;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
import com.android.settingslib.applications.ApplicationsState.AppEntry;
|
||||
import com.android.settingslib.applications.ApplicationsState.Callbacks;
|
||||
import com.android.settingslib.applications.ApplicationsState.Session;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
|
||||
@SearchIndexable
|
||||
public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
implements OnSwitchChangeListener, Listener, Callback, Callbacks {
|
||||
|
||||
@@ -94,7 +102,7 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
|
||||
@Override
|
||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||
synchronized(this) {
|
||||
synchronized (this) {
|
||||
if (mSwitching) {
|
||||
return;
|
||||
}
|
||||
@@ -115,7 +123,7 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
|
||||
@Override
|
||||
public void onDataSaverChanged(boolean isDataSaving) {
|
||||
synchronized(this) {
|
||||
synchronized (this) {
|
||||
mSwitchBar.setChecked(isDataSaving);
|
||||
mSwitching = false;
|
||||
}
|
||||
@@ -190,4 +198,25 @@ public class DataSaverSummary extends SettingsPreferenceFragment
|
||||
public void onLoadEntriesCompleted() {
|
||||
|
||||
}
|
||||
|
||||
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider() {
|
||||
@Override
|
||||
public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
|
||||
boolean enabled) {
|
||||
final ArrayList<SearchIndexableResource> result = new ArrayList<>();
|
||||
|
||||
final SearchIndexableResource sir = new SearchIndexableResource(context);
|
||||
sir.xmlResId = R.xml.data_saver;
|
||||
result.add(sir);
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isPageSearchEnabled(Context context) {
|
||||
return DataUsageUtils.hasMobileData(context)
|
||||
&& DataUsageUtils.getDefaultSubscriptionId(context)
|
||||
!= SubscriptionManager.INVALID_SUBSCRIPTION_ID;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -51,8 +51,7 @@ import androidx.preference.PreferenceScreen;
|
||||
* Settings preference fragment that displays data usage summary.
|
||||
*/
|
||||
@SearchIndexable(forTarget = SearchIndexable.ALL & ~SearchIndexable.ARC)
|
||||
public class DataUsageSummary extends DataUsageBaseFragment implements Indexable,
|
||||
DataUsageEditController {
|
||||
public class DataUsageSummary extends DataUsageBaseFragment implements DataUsageEditController {
|
||||
|
||||
private static final String TAG = "DataUsageSummary";
|
||||
|
||||
@@ -379,6 +378,9 @@ public class DataUsageSummary extends DataUsageBaseFragment implements Indexable
|
||||
// This title is named Wifi, and will confuse users.
|
||||
keys.add(KEY_WIFI_USAGE_TITLE);
|
||||
|
||||
// Duplicate entry for "Data saver"
|
||||
keys.add(KEY_RESTRICT_BACKGROUND);
|
||||
|
||||
return keys;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -16,6 +16,7 @@ package com.android.settings.datausage;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuInflater;
|
||||
import android.view.MenuItem;
|
||||
@@ -24,9 +25,16 @@ import android.view.View;
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settings.search.Indexable;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
import com.android.settingslib.applications.ApplicationsState.AppFilter;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@SearchIndexable
|
||||
public class UnrestrictedDataAccess extends DashboardFragment {
|
||||
|
||||
private static final String TAG = "UnrestrictedDataAccess";
|
||||
@@ -108,4 +116,18 @@ public class UnrestrictedDataAccess extends DashboardFragment {
|
||||
protected int getPreferenceScreenResId() {
|
||||
return R.xml.unrestricted_data_access_settings;
|
||||
}
|
||||
|
||||
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider() {
|
||||
@Override
|
||||
public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
|
||||
boolean enabled) {
|
||||
final ArrayList<SearchIndexableResource> result = new ArrayList<>();
|
||||
|
||||
final SearchIndexableResource sir = new SearchIndexableResource(context);
|
||||
sir.xmlResId = R.xml.unrestricted_data_access_settings;
|
||||
result.add(sir);
|
||||
return result;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import android.os.UserHandle;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.applications.AppStateBaseBridge;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
@@ -83,7 +84,9 @@ public class UnrestrictedDataAccessPreferenceController extends BasePreferenceCo
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
return AVAILABLE;
|
||||
return mContext.getResources().getBoolean(R.bool.config_show_data_saver)
|
||||
? AVAILABLE_UNSEARCHABLE
|
||||
: UNSUPPORTED_ON_DEVICE;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user