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

Commit c0372a42 authored by Mario Bertschler's avatar Mario Bertschler
Browse files

Adding suggested app as part of app discovery.

It will replace the least prioritized predicted app
with the suggested app from app discovery.

Dogfood only!

Change-Id: I7713759c70ab6eaacfec2c45d3f78335c40dac79
parent 825c3db1
Loading
Loading
Loading
Loading
+13 −1
Original line number Diff line number Diff line
@@ -183,7 +183,10 @@ public class AlphabeticalAppsList {
    private final List<ComponentKey> mPredictedAppComponents = new ArrayList<>();
    // The set of predicted apps resolved from the component names and the current set of apps
    private final List<AppInfo> mPredictedApps = new ArrayList<>();
    // The set of apps returned from a discovery service while searching
    private final List<AppDiscoveryAppInfo> mDiscoveredApps = new ArrayList<>();
    // The suggested app returned by a discovery service
    private AppDiscoveryAppInfo mSuggestedApp;

    // The of ordered component names as a result of a search query
    private ArrayList<ComponentKey> mSearchResults;
@@ -288,6 +291,9 @@ public class AlphabeticalAppsList {
                @NonNull AppDiscoveryUpdateState state) {
        mAppDiscoveryUpdateState = state;
        switch (state) {
            case SUGGESTED:
                mSuggestedApp = app != null ? new AppDiscoveryAppInfo(app) : null;
                break;
            case START:
                mDiscoveredApps.clear();
                break;
@@ -435,6 +441,7 @@ public class AlphabeticalAppsList {
        // Process the predicted app components
        mPredictedApps.clear();
        if (mPredictedAppComponents != null && !mPredictedAppComponents.isEmpty() && !hasFilter()) {
            int suggestedAppsCount = mSuggestedApp != null ? 1 : 0;
            for (ComponentKey ck : mPredictedAppComponents) {
                AppInfo info = mComponentToAppMap.get(ck);
                if (info != null) {
@@ -445,11 +452,16 @@ public class AlphabeticalAppsList {
                    }
                }
                // Stop at the number of predicted apps
                if (mPredictedApps.size() == mNumPredictedAppsPerRow) {
                if (mPredictedApps.size() + suggestedAppsCount == mNumPredictedAppsPerRow) {
                    break;
                }
            }

            if (mSuggestedApp != null) {
                // adding suggested app as the last predicted app
                mPredictedApps.add(mSuggestedApp);
            }

            if (!mPredictedApps.isEmpty()) {
                // Add a section for the predictions
                lastFastScrollerSectionInfo = new FastScrollSectionInfo("");
+1 −1
Original line number Diff line number Diff line
@@ -17,5 +17,5 @@
package com.android.launcher3.discovery;

public enum AppDiscoveryUpdateState {
    START, UPDATE, END
    START, UPDATE, END, SUGGESTED
}