Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35379abd authored by Satish Sampath's avatar Satish Sampath
Browse files

Added attribute queryAfterZeroResults to searchables.

As of now we are just reading it from the xml and not acting upon it, that would come in a subsequent change.
parent 174231d8
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -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;
@@ -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);
@@ -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.
     */
@@ -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();
@@ -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);
+8 −0
Original line number Diff line number Diff line
@@ -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