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

Commit 1631de1a authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Autolaunch if one app in active profile and empty state in the...

Merge "Autolaunch if one app in active profile and empty state in the inactive." into rvc-dev am: 8f15e287

Change-Id: I08db2557484c74875432912abe4a360b8b017a95
parents e47a9b4d 8f15e287
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -388,6 +388,8 @@ public abstract class AbstractMultiProfilePagerAdapter extends PagerAdapter {
        Button button = emptyStateView.findViewById(R.id.resolver_empty_state_button);
        button.setVisibility(buttonOnClick != null ? View.VISIBLE : View.GONE);
        button.setOnClickListener(buttonOnClick);

        activeListAdapter.markTabLoaded();
    }

    private void showSpinner(View emptyStateView) {
+7 −4
Original line number Diff line number Diff line
@@ -1339,9 +1339,12 @@ public class ResolverActivity extends Activity implements
                    + "cannot be null.");
        }
        // We partially rebuild the inactive adapter to determine if we should auto launch
        boolean rebuildCompleted = mMultiProfilePagerAdapter.rebuildActiveTab(true);
        // isTabLoaded will be true here if the empty state screen is shown instead of the list.
        boolean rebuildCompleted = mMultiProfilePagerAdapter.rebuildActiveTab(true)
                || mMultiProfilePagerAdapter.getActiveListAdapter().isTabLoaded();
        if (shouldShowTabs()) {
            boolean rebuildInactiveCompleted = mMultiProfilePagerAdapter.rebuildInactiveTab(false);
            boolean rebuildInactiveCompleted = mMultiProfilePagerAdapter.rebuildInactiveTab(false)
                    || mMultiProfilePagerAdapter.getInactiveListAdapter().isTabLoaded();
            rebuildCompleted = rebuildCompleted && rebuildInactiveCompleted;
        }

@@ -1401,8 +1404,8 @@ public class ResolverActivity extends Activity implements
        if (numberOfProfiles == 1 && maybeAutolaunchIfSingleTarget()) {
            return true;
        } else if (numberOfProfiles == 2
                && mMultiProfilePagerAdapter.getActiveListAdapter().isListLoaded()
                && mMultiProfilePagerAdapter.getInactiveListAdapter().isListLoaded()
                && mMultiProfilePagerAdapter.getActiveListAdapter().isTabLoaded()
                && mMultiProfilePagerAdapter.getInactiveListAdapter().isTabLoaded()
                && (maybeAutolaunchIfNoAppsOnInactiveTab()
                        || maybeAutolaunchIfCrossProfileSupported())) {
            return true;
+9 −5
Original line number Diff line number Diff line
@@ -87,7 +87,7 @@ public class ResolverListAdapter extends BaseAdapter {
    private final ResolverListCommunicator mResolverListCommunicator;
    private Runnable mPostListReadyRunnable;
    private final boolean mIsAudioCaptureDevice;
    private boolean mIsListLoaded;
    private boolean mIsTabLoaded;

    public ResolverListAdapter(Context context, List<Intent> payloadIntents,
            Intent[] initialIntents, List<ResolveInfo> rList,
@@ -192,7 +192,7 @@ public class ResolverListAdapter extends BaseAdapter {
        mLastChosenPosition = -1;
        mAllTargetsAreBrowsers = false;
        mDisplayList.clear();
        mIsListLoaded = false;
        mIsTabLoaded = false;

        if (mBaseResolveList != null) {
            currentResolveList = mUnfilteredResolveList = new ArrayList<>();
@@ -354,7 +354,7 @@ public class ResolverListAdapter extends BaseAdapter {

        mResolverListCommunicator.sendVoiceChoicesIfNeeded();
        postListReadyRunnable(doPostProcessing);
        mIsListLoaded = true;
        mIsTabLoaded = true;
    }

    /**
@@ -614,8 +614,12 @@ public class ResolverListAdapter extends BaseAdapter {
        return mIntents;
    }

    protected boolean isListLoaded() {
        return mIsListLoaded;
    protected boolean isTabLoaded() {
        return mIsTabLoaded;
    }

    protected void markTabLoaded() {
        mIsTabLoaded = true;
    }

    /**