Merge "Prevent crash in Search from Stack overflow"
This commit is contained in:
committed by
Android (Google) Code Review
commit
b84c1c5afa
@@ -163,15 +163,4 @@ public class ChannelImportanceSettings extends NotificationSettingsBase
|
||||
mChannel.lockFields(USER_LOCKED_IMPORTANCE);
|
||||
mBackend.updateChannel(mAppRow.pkg, mAppRow.uid, mChannel);
|
||||
}
|
||||
|
||||
// This page exists per notification channel; should not be included
|
||||
// in search
|
||||
public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider() {
|
||||
@Override
|
||||
public List<SearchIndexableResource> getXmlResourcesToIndex(
|
||||
Context context, boolean enabled) {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -208,15 +208,19 @@ abstract public class NotificationSettingsBase extends DashboardFragment {
|
||||
intent,
|
||||
0 //PackageManager.MATCH_DEFAULT_ONLY
|
||||
);
|
||||
if (DEBUG) Log.d(TAG, "Found " + resolveInfos.size() + " preference activities"
|
||||
+ (resolveInfos.size() == 0 ? " ;_;" : ""));
|
||||
if (DEBUG) {
|
||||
Log.d(TAG, "Found " + resolveInfos.size() + " preference activities"
|
||||
+ (resolveInfos.size() == 0 ? " ;_;" : ""));
|
||||
}
|
||||
for (ResolveInfo ri : resolveInfos) {
|
||||
final ActivityInfo activityInfo = ri.activityInfo;
|
||||
final ApplicationInfo appInfo = activityInfo.applicationInfo;
|
||||
if (mAppRow.settingsIntent != null) {
|
||||
if (DEBUG) Log.v(TAG, "Ignoring duplicate notification preference activity ("
|
||||
+ activityInfo.name + ") for package "
|
||||
+ activityInfo.packageName);
|
||||
if (DEBUG) {
|
||||
Log.d(TAG, "Ignoring duplicate notification preference activity ("
|
||||
+ activityInfo.name + ") for package "
|
||||
+ activityInfo.packageName);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
mAppRow.settingsIntent = intent
|
||||
@@ -280,7 +284,7 @@ abstract public class NotificationSettingsBase extends DashboardFragment {
|
||||
public boolean onPreferenceChange(Preference preference,
|
||||
Object o) {
|
||||
boolean value = (Boolean) o;
|
||||
int importance = value ? IMPORTANCE_LOW : IMPORTANCE_NONE;
|
||||
int importance = value ? IMPORTANCE_LOW : IMPORTANCE_NONE;
|
||||
channel.setImportance(importance);
|
||||
channel.lockFields(
|
||||
NotificationChannel.USER_LOCKED_IMPORTANCE);
|
||||
@@ -365,8 +369,10 @@ abstract public class NotificationSettingsBase extends DashboardFragment {
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
String packageName = intent.getData().getSchemeSpecificPart();
|
||||
if (mPkgInfo == null || TextUtils.equals(mPkgInfo.packageName, packageName)) {
|
||||
if (DEBUG) Log.d(TAG, "Package (" + packageName + ") removed. Removing"
|
||||
+ "NotificationSettingsBase.");
|
||||
if (DEBUG) {
|
||||
Log.d(TAG, "Package (" + packageName + ") removed. Removing"
|
||||
+ "NotificationSettingsBase.");
|
||||
}
|
||||
onPackageRemoved();
|
||||
}
|
||||
}
|
||||
@@ -380,24 +386,6 @@ abstract public class NotificationSettingsBase extends DashboardFragment {
|
||||
return left.getId().compareTo(right.getId());
|
||||
};
|
||||
|
||||
/**
|
||||
* These screens aren't searchable - they only make sense in the context of an app, so
|
||||
* surfacing a generic version would be impossible.
|
||||
*/
|
||||
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider() {
|
||||
@Override
|
||||
public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
|
||||
boolean enabled) {
|
||||
return new ArrayList<>();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AbstractPreferenceController> getPreferenceControllers(Context context) {
|
||||
return getPreferenceControllers(context);
|
||||
}
|
||||
};
|
||||
|
||||
protected class ImportanceListener {
|
||||
protected void onImportanceChanged() {
|
||||
final PreferenceScreen screen = getPreferenceScreen();
|
||||
|
||||
@@ -64,10 +64,6 @@ import com.android.settings.location.LocationSettings;
|
||||
import com.android.settings.location.ScanningSettings;
|
||||
import com.android.settings.network.NetworkDashboardFragment;
|
||||
import com.android.settings.nfc.PaymentSettings;
|
||||
import com.android.settings.notification.AppNotificationSettings;
|
||||
import com.android.settings.notification.ChannelGroupNotificationSettings;
|
||||
import com.android.settings.notification.ChannelImportanceSettings;
|
||||
import com.android.settings.notification.ChannelNotificationSettings;
|
||||
import com.android.settings.notification.ConfigureNotificationSettings;
|
||||
import com.android.settings.notification.SoundSettings;
|
||||
import com.android.settings.notification.ZenModeAutomationSettings;
|
||||
@@ -161,7 +157,6 @@ public final class SearchIndexableResources {
|
||||
addIndex(TtsEnginePreferenceFragment.class);
|
||||
addIndex(MagnificationPreferenceFragment.class);
|
||||
addIndex(AccessibilityShortcutPreferenceFragment.class);
|
||||
addIndex(ChannelImportanceSettings.class);
|
||||
addIndex(DreamSettings.class);
|
||||
addIndex(SupportDashboardActivity.class);
|
||||
addIndex(AutomaticStorageManagerSettings.class);
|
||||
@@ -171,10 +166,6 @@ public final class SearchIndexableResources {
|
||||
addIndex(LockscreenDashboardFragment.class);
|
||||
addIndex(ZenModeBehaviorSettings.class);
|
||||
addIndex(ZenModeAutomationSettings.class);
|
||||
addIndex(AppNotificationSettings.class);
|
||||
addIndex(ChannelNotificationSettings.class);
|
||||
addIndex(ChannelImportanceSettings.class);
|
||||
addIndex(ChannelGroupNotificationSettings.class);
|
||||
}
|
||||
|
||||
private SearchIndexableResources() {
|
||||
|
||||
@@ -7,6 +7,10 @@ com.android.settings.fuelgauge.AdvancedPowerUsageDetail
|
||||
com.android.settings.development.featureflags.FeatureFlagsDashboard
|
||||
com.android.settings.development.qstile.DevelopmentTileConfigFragment
|
||||
com.android.settings.deviceinfo.StorageProfileFragment
|
||||
com.android.settings.notification.ChannelNotificationSettings
|
||||
com.android.settings.notification.ChannelImportanceSettings
|
||||
com.android.settings.notification.ChannelGroupNotificationSettings
|
||||
com.android.settings.notification.AppNotificationSettings
|
||||
com.android.settings.wifi.details.WifiNetworkDetailsFragment
|
||||
com.android.settings.wifi.p2p.WifiP2pSettings
|
||||
com.android.settings.enterprise.ApplicationListFragment$AdminGrantedPermissionCamera
|
||||
@@ -15,4 +19,4 @@ com.android.settings.enterprise.ApplicationListFragment$AdminGrantedPermissionMi
|
||||
com.android.settings.enterprise.ApplicationListFragment$EnterpriseInstalledPackages
|
||||
com.android.settings.enterprise.EnterpriseSetDefaultAppsListFragment
|
||||
com.android.settings.wifi.tether.WifiTetherSettings
|
||||
com.android.settings.wifi.SavedAccessPointsWifiSettings
|
||||
com.android.settings.wifi.SavedAccessPointsWifiSettings
|
||||
@@ -79,4 +79,4 @@ com.android.settings.IccLockSettings
|
||||
com.android.settings.TetherSettings
|
||||
com.android.settings.ApnEditor
|
||||
com.android.settings.UserCredentialsSettings
|
||||
com.android.settings.TestingSettings
|
||||
com.android.settings.TestingSettings
|
||||
Reference in New Issue
Block a user