Loading core/java/android/server/search/SearchableInfo.java +16 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ public final class SearchableInfo implements Parcelable { private final int mSearchInputType; private final int mSearchImeOptions; private final boolean mIncludeInGlobalSearch; private final boolean mQueryAfterZeroResults; private final String mSuggestAuthority; private final String mSuggestPath; private final String mSuggestSelection; Loading Loading @@ -276,6 +277,8 @@ public final class SearchableInfo implements Parcelable { EditorInfo.IME_ACTION_SEARCH); mIncludeInGlobalSearch = a.getBoolean( com.android.internal.R.styleable.Searchable_includeInGlobalSearch, false); mQueryAfterZeroResults = a.getBoolean( com.android.internal.R.styleable.Searchable_queryAfterZeroResults, false); mSuggestAuthority = a.getString( com.android.internal.R.styleable.Searchable_searchSuggestAuthority); Loading Loading @@ -636,6 +639,17 @@ public final class SearchableInfo implements Parcelable { return mIncludeInGlobalSearch; } /** * Checks whether this searchable activity should be invoked after a query returned zero * results. * * @return The value of the <code>queryAfterZeroResults</code> attribute, * or <code>false</code> if the attribute is not set. */ public boolean queryAfterZeroResults() { return mQueryAfterZeroResults; } /** * Support for parcelable and aidl operations. */ Loading Loading @@ -667,6 +681,7 @@ public final class SearchableInfo implements Parcelable { mSearchInputType = in.readInt(); mSearchImeOptions = in.readInt(); mIncludeInGlobalSearch = in.readInt() != 0; mQueryAfterZeroResults = in.readInt() != 0; mSuggestAuthority = in.readString(); mSuggestPath = in.readString(); Loading Loading @@ -702,6 +717,7 @@ public final class SearchableInfo implements Parcelable { dest.writeInt(mSearchInputType); dest.writeInt(mSearchImeOptions); dest.writeInt(mIncludeInGlobalSearch ? 1 : 0); dest.writeInt(mQueryAfterZeroResults ? 1 : 0); dest.writeString(mSuggestAuthority); dest.writeString(mSuggestPath); Loading core/res/res/values/attrs.xml +8 −0 Original line number Diff line number Diff line Loading @@ -2849,6 +2849,14 @@ The default value is <code>false</code>. <i>Optional attribute.</i>. --> <attr name="includeInGlobalSearch" format="boolean" /> <!-- If provided and <code>true</code>, this searchable activity will be invoked for all queries in a particular session. If set to <code>false</code> and the activity returned zero results for a query, it will not be invoked again in that session for supersets of that zero-results query. For example, if the activity returned zero results for "bo", it would not be queried again for "bob". The default value is <code>false</code>. <i>Optional attribute.</i>. --> <attr name="queryAfterZeroResults" format="boolean" /> </declare-styleable> <!-- In order to process special action keys during search, you must define them using Loading Loading
core/java/android/server/search/SearchableInfo.java +16 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ public final class SearchableInfo implements Parcelable { private final int mSearchInputType; private final int mSearchImeOptions; private final boolean mIncludeInGlobalSearch; private final boolean mQueryAfterZeroResults; private final String mSuggestAuthority; private final String mSuggestPath; private final String mSuggestSelection; Loading Loading @@ -276,6 +277,8 @@ public final class SearchableInfo implements Parcelable { EditorInfo.IME_ACTION_SEARCH); mIncludeInGlobalSearch = a.getBoolean( com.android.internal.R.styleable.Searchable_includeInGlobalSearch, false); mQueryAfterZeroResults = a.getBoolean( com.android.internal.R.styleable.Searchable_queryAfterZeroResults, false); mSuggestAuthority = a.getString( com.android.internal.R.styleable.Searchable_searchSuggestAuthority); Loading Loading @@ -636,6 +639,17 @@ public final class SearchableInfo implements Parcelable { return mIncludeInGlobalSearch; } /** * Checks whether this searchable activity should be invoked after a query returned zero * results. * * @return The value of the <code>queryAfterZeroResults</code> attribute, * or <code>false</code> if the attribute is not set. */ public boolean queryAfterZeroResults() { return mQueryAfterZeroResults; } /** * Support for parcelable and aidl operations. */ Loading Loading @@ -667,6 +681,7 @@ public final class SearchableInfo implements Parcelable { mSearchInputType = in.readInt(); mSearchImeOptions = in.readInt(); mIncludeInGlobalSearch = in.readInt() != 0; mQueryAfterZeroResults = in.readInt() != 0; mSuggestAuthority = in.readString(); mSuggestPath = in.readString(); Loading Loading @@ -702,6 +717,7 @@ public final class SearchableInfo implements Parcelable { dest.writeInt(mSearchInputType); dest.writeInt(mSearchImeOptions); dest.writeInt(mIncludeInGlobalSearch ? 1 : 0); dest.writeInt(mQueryAfterZeroResults ? 1 : 0); dest.writeString(mSuggestAuthority); dest.writeString(mSuggestPath); Loading
core/res/res/values/attrs.xml +8 −0 Original line number Diff line number Diff line Loading @@ -2849,6 +2849,14 @@ The default value is <code>false</code>. <i>Optional attribute.</i>. --> <attr name="includeInGlobalSearch" format="boolean" /> <!-- If provided and <code>true</code>, this searchable activity will be invoked for all queries in a particular session. If set to <code>false</code> and the activity returned zero results for a query, it will not be invoked again in that session for supersets of that zero-results query. For example, if the activity returned zero results for "bo", it would not be queried again for "bob". The default value is <code>false</code>. <i>Optional attribute.</i>. --> <attr name="queryAfterZeroResults" format="boolean" /> </declare-styleable> <!-- In order to process special action keys during search, you must define them using Loading