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

Commit 8c7b5b60 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fix talkback for switch on work in ResolverActivity" into rvc-dev am:...

Merge "Fix talkback for switch on work in ResolverActivity" into rvc-dev am: 606980b3 am: 44f514ed

Change-Id: If8ee0adbd2a6c08d638ab1a55d6aa5ee40032504
parents bef2732a 44f514ed
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -62,6 +62,7 @@ public abstract class AbstractMultiProfilePagerAdapter extends PagerAdapter {
    private final Context mContext;
    private int mCurrentPage;
    private OnProfileSelectedListener mOnProfileSelectedListener;
    private OnSwitchOnWorkSelectedListener mOnSwitchOnWorkSelectedListener;
    private Set<Integer> mLoadedPages;
    private final UserHandle mPersonalProfileUserHandle;
    private final UserHandle mWorkProfileUserHandle;
@@ -124,6 +125,10 @@ public abstract class AbstractMultiProfilePagerAdapter extends PagerAdapter {
        mOnProfileSelectedListener = listener;
    }

    void setOnSwitchOnWorkSelectedListener(OnSwitchOnWorkSelectedListener listener) {
        mOnSwitchOnWorkSelectedListener = listener;
    }

    Context getContext() {
        return mContext;
    }
@@ -397,6 +402,9 @@ public abstract class AbstractMultiProfilePagerAdapter extends PagerAdapter {
                    ProfileDescriptor descriptor = getItem(
                            userHandleToPageIndex(listAdapter.getUserHandle()));
                    showSpinner(descriptor.getEmptyStateView());
                    if (mOnSwitchOnWorkSelectedListener != null) {
                        mOnSwitchOnWorkSelectedListener.onSwitchOnWorkSelected();
                    }
                    mInjector.requestQuietModeEnabled(false, mWorkProfileUserHandle);
                });
        return true;
@@ -575,6 +583,16 @@ public abstract class AbstractMultiProfilePagerAdapter extends PagerAdapter {
        void onProfileSelected(int profileIndex);
    }

    /**
     * Listener for when the user switches on the work profile from the work tab.
     */
    interface OnSwitchOnWorkSelectedListener {
        /**
         * Callback for when the user switches on the work profile from the work tab.
         */
        void onSwitchOnWorkSelected();
    }

    /**
     * Describes an injector to be used for cross profile functionality. Overridable for testing.
     */
+7 −0
Original line number Diff line number Diff line
@@ -1662,6 +1662,13 @@ public class ResolverActivity extends Activity implements
                    resetButtonBar();
                    resetCheckedItem();
                });
        mMultiProfilePagerAdapter.setOnSwitchOnWorkSelectedListener(
                () -> {
                    final View workTab = tabHost.getTabWidget().getChildAt(1);
                    workTab.setFocusable(true);
                    workTab.setFocusableInTouchMode(true);
                    workTab.requestFocus();
                });
        findViewById(R.id.resolver_tab_divider).setVisibility(View.VISIBLE);
    }