Loading src/com/android/settings/print/PrintSettingsFragment.java +53 −8 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import android.print.PrintJobInfo; import android.print.PrintManager; import android.print.PrintManager.PrintJobStateChangeListener; import android.printservice.PrintServiceInfo; import android.provider.SearchIndexableResource; import android.provider.Settings; import android.text.TextUtils; import android.text.format.DateUtils; Loading @@ -49,6 +50,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.Switch; import android.widget.TextView; Loading @@ -56,6 +58,9 @@ import com.android.internal.content.PackageMonitor; import com.android.settings.DialogCreatable; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable;; import com.android.settings.search.SearchIndexableRaw; import java.text.DateFormat; import java.util.ArrayList; Loading @@ -64,7 +69,8 @@ import java.util.List; /** * Fragment with the top level print settings. */ public class PrintSettingsFragment extends SettingsPreferenceFragment implements DialogCreatable { public class PrintSettingsFragment extends SettingsPreferenceFragment implements DialogCreatable, Indexable { static final char ENABLED_PRINT_SERVICES_SEPARATOR = ':'; Loading Loading @@ -544,4 +550,43 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment implements return false; } } public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { @Override public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) { List<SearchIndexableRaw> indexables = new ArrayList<SearchIndexableRaw>(); PackageManager packageManager = context.getPackageManager(); PrintManager printManager = (PrintManager) context.getSystemService( Context.PRINT_SERVICE); String screenTitle = context.getResources().getString(R.string.print_settings_title); // Indexing all services, reagardles if enabled. List<PrintServiceInfo> services = printManager.getInstalledPrintServices(); final int serviceCount = services.size(); for (int i = 0; i < serviceCount; i++) { PrintServiceInfo service = services.get(i); SearchIndexableRaw indexable = new SearchIndexableRaw(context); indexable.title = service.getResolveInfo().loadLabel(packageManager).toString(); indexable.summaryOn = context.getString(R.string.print_feature_state_on); indexable.summaryOff = context.getString(R.string.print_feature_state_off); indexable.screenTitle = screenTitle; indexables.add(indexable); } return indexables; } @Override public List<SearchIndexableResource> getXmlResourcesToIndex(Context context, boolean enabled) { List<SearchIndexableResource> indexables = new ArrayList<SearchIndexableResource>(); SearchIndexableResource indexable = new SearchIndexableResource(context); indexable.xmlResId = R.xml.print_settings; indexables.add(indexable); return indexables; } }; } No newline at end of file src/com/android/settings/search/SearchIndexableRaw.java +22 −0 Original line number Diff line number Diff line Loading @@ -28,12 +28,34 @@ import android.provider.SearchIndexableData; */ public class SearchIndexableRaw extends SearchIndexableData { /** * Title's raw data. */ public String title; /** * Summary's raw data when the data is "ON". */ public String summaryOn; /** * Summary's raw data when the data is "OFF". */ public String summaryOff; /** * Entries associated with the raw data (when the data can have several values). */ public String entries; /** * Keywords' raw data. */ public String keywords; /** * Fragment's or Activity's title associated with the raw data. */ public String screenTitle; public SearchIndexableRaw(Context context) { Loading src/com/android/settings/search/SearchIndexableResources.java +1 −1 Original line number Diff line number Diff line Loading @@ -192,7 +192,7 @@ public final class SearchIndexableResources { sResMap.put(PrintSettingsFragment.class.getName(), new SearchIndexableResource(RANK_PRINTING, R.xml.print_settings, NO_DATA_RES_ID, PrintSettingsFragment.class.getName(), com.android.internal.R.drawable.ic_print)); Loading Loading
src/com/android/settings/print/PrintSettingsFragment.java +53 −8 Original line number Diff line number Diff line Loading @@ -40,6 +40,7 @@ import android.print.PrintJobInfo; import android.print.PrintManager; import android.print.PrintManager.PrintJobStateChangeListener; import android.printservice.PrintServiceInfo; import android.provider.SearchIndexableResource; import android.provider.Settings; import android.text.TextUtils; import android.text.format.DateUtils; Loading @@ -49,6 +50,7 @@ import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.accessibility.AccessibilityNodeInfo; import android.widget.Switch; import android.widget.TextView; Loading @@ -56,6 +58,9 @@ import com.android.internal.content.PackageMonitor; import com.android.settings.DialogCreatable; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.Indexable;; import com.android.settings.search.SearchIndexableRaw; import java.text.DateFormat; import java.util.ArrayList; Loading @@ -64,7 +69,8 @@ import java.util.List; /** * Fragment with the top level print settings. */ public class PrintSettingsFragment extends SettingsPreferenceFragment implements DialogCreatable { public class PrintSettingsFragment extends SettingsPreferenceFragment implements DialogCreatable, Indexable { static final char ENABLED_PRINT_SERVICES_SEPARATOR = ':'; Loading Loading @@ -544,4 +550,43 @@ public class PrintSettingsFragment extends SettingsPreferenceFragment implements return false; } } public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { @Override public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) { List<SearchIndexableRaw> indexables = new ArrayList<SearchIndexableRaw>(); PackageManager packageManager = context.getPackageManager(); PrintManager printManager = (PrintManager) context.getSystemService( Context.PRINT_SERVICE); String screenTitle = context.getResources().getString(R.string.print_settings_title); // Indexing all services, reagardles if enabled. List<PrintServiceInfo> services = printManager.getInstalledPrintServices(); final int serviceCount = services.size(); for (int i = 0; i < serviceCount; i++) { PrintServiceInfo service = services.get(i); SearchIndexableRaw indexable = new SearchIndexableRaw(context); indexable.title = service.getResolveInfo().loadLabel(packageManager).toString(); indexable.summaryOn = context.getString(R.string.print_feature_state_on); indexable.summaryOff = context.getString(R.string.print_feature_state_off); indexable.screenTitle = screenTitle; indexables.add(indexable); } return indexables; } @Override public List<SearchIndexableResource> getXmlResourcesToIndex(Context context, boolean enabled) { List<SearchIndexableResource> indexables = new ArrayList<SearchIndexableResource>(); SearchIndexableResource indexable = new SearchIndexableResource(context); indexable.xmlResId = R.xml.print_settings; indexables.add(indexable); return indexables; } }; } No newline at end of file
src/com/android/settings/search/SearchIndexableRaw.java +22 −0 Original line number Diff line number Diff line Loading @@ -28,12 +28,34 @@ import android.provider.SearchIndexableData; */ public class SearchIndexableRaw extends SearchIndexableData { /** * Title's raw data. */ public String title; /** * Summary's raw data when the data is "ON". */ public String summaryOn; /** * Summary's raw data when the data is "OFF". */ public String summaryOff; /** * Entries associated with the raw data (when the data can have several values). */ public String entries; /** * Keywords' raw data. */ public String keywords; /** * Fragment's or Activity's title associated with the raw data. */ public String screenTitle; public SearchIndexableRaw(Context context) { Loading
src/com/android/settings/search/SearchIndexableResources.java +1 −1 Original line number Diff line number Diff line Loading @@ -192,7 +192,7 @@ public final class SearchIndexableResources { sResMap.put(PrintSettingsFragment.class.getName(), new SearchIndexableResource(RANK_PRINTING, R.xml.print_settings, NO_DATA_RES_ID, PrintSettingsFragment.class.getName(), com.android.internal.R.drawable.ic_print)); Loading