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

Commit a9d50c51 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: Ib44fd0e4107f7128885742268e77e413537f11ac
parents 581d94ba 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;
    }

    /**