summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorFabrice Di Meglio <fdimeglio@google.com>2014-04-02 17:07:36 -0700
committerFabrice Di Meglio <fdimeglio@google.com>2014-04-02 17:18:56 -0700
commitf66eb7a8c8aa65c704dad4e565ce919ec121705f (patch)
tree954405aea01b0cab0cb35753ca2aa963080f0216 /src
parentfb5e639b30e866ba5a379487ab5b7a77fe175a7b (diff)
downloadpackages_apps_Settings-f66eb7a8c8aa65c704dad4e565ce919ec121705f.zip
packages_apps_Settings-f66eb7a8c8aa65c704dad4e565ce919ec121705f.tar.gz
packages_apps_Settings-f66eb7a8c8aa65c704dad4e565ce919ec121705f.tar.bz2
Add indexing for Storage preferences
- implement the contract for SEARCH_INDEX_DATA_PROVIDER Change-Id: I131e9176c47ccd697d05961b09546ba0e51059f7
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/deviceinfo/Memory.java86
-rw-r--r--src/com/android/settings/search/SearchIndexableResources.java4
2 files changed, 86 insertions, 4 deletions
diff --git a/src/com/android/settings/deviceinfo/Memory.java b/src/com/android/settings/deviceinfo/Memory.java
index 4923070..de793cf 100644
--- a/src/com/android/settings/deviceinfo/Memory.java
+++ b/src/com/android/settings/deviceinfo/Memory.java
@@ -41,6 +41,7 @@ import android.os.storage.StorageManager;
import android.os.storage.StorageVolume;
import android.preference.Preference;
import android.preference.PreferenceScreen;
+import android.provider.SearchIndexableResource;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
@@ -51,6 +52,8 @@ import com.android.settings.R;
import com.android.settings.SettingsActivity;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
+import com.android.settings.search.Indexable;
+import com.android.settings.search.SearchIndexableRaw;
import com.google.android.collect.Lists;
import java.util.ArrayList;
@@ -60,7 +63,7 @@ import java.util.List;
* Panel showing storage usage on disk for known {@link StorageVolume} returned
* by {@link StorageManager}. Calculates and displays usage of data types.
*/
-public class Memory extends SettingsPreferenceFragment {
+public class Memory extends SettingsPreferenceFragment implements Indexable{
private static final String TAG = "MemorySettings";
private static final String TAG_CONFIRM_CLEAR_CACHE = "confirmClearCache";
@@ -424,4 +427,85 @@ public class Memory extends SettingsPreferenceFragment {
return builder.create();
}
}
+
+ /**
+ * Enable indexing of searchable data
+ */
+ public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new SearchIndexProvider() {
+
+ @Override
+ public List<SearchIndexableResource> getXmlResourcesToIndex(
+ Context context, boolean enabled) {
+ return null;
+ }
+
+ @Override
+ public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
+ final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>();
+
+ SearchIndexableRaw data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.storage_settings);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.internal_storage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ final StorageVolume[] storageVolumes = StorageManager.from(context).getVolumeList();
+ for (StorageVolume volume : storageVolumes) {
+ if (!volume.isEmulated()) {
+ data.title = volume.getDescription(context);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+ }
+ }
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_size);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_available);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_apps_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_dcim_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_music_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_downloads_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_media_cache_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ data = new SearchIndexableRaw(context);
+ data.title = context.getString(R.string.memory_media_misc_usage);
+ data.screenTitle = context.getString(R.string.storage_settings);
+ result.add(data);
+
+ return result;
+ }
+ };
+
}
diff --git a/src/com/android/settings/search/SearchIndexableResources.java b/src/com/android/settings/search/SearchIndexableResources.java
index bc6725e..9c0e5ea 100644
--- a/src/com/android/settings/search/SearchIndexableResources.java
+++ b/src/com/android/settings/search/SearchIndexableResources.java
@@ -22,7 +22,6 @@ import com.android.settings.DevelopmentSettings;
import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings;
import com.android.settings.HomeSettings;
-import com.android.settings.NotificationAccessSettings;
import com.android.settings.NotificationSettings;
import com.android.settings.PrivacySettings;
import com.android.settings.R;
@@ -44,7 +43,6 @@ import com.android.settings.wifi.WifiSettings;
import java.util.Collection;
import java.util.HashMap;
-import java.util.Iterator;
public final class SearchIndexableResources {
@@ -139,7 +137,7 @@ public final class SearchIndexableResources {
sResMap.put(Memory.class.getName(),
new SearchIndexableResource(RANK_MEMORY,
- R.xml.device_info_memory,
+ NO_DATA_RES_ID,
Memory.class.getName(),
R.drawable.ic_settings_storage));