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

Commit 427c8072 authored by Weng Su's avatar Weng Su
Browse files

Use ActivityStarter instead of context to start activities in SysUI

- The ActivityStarter will handle launching the dialog to the actual foreground user

Bug: 323072039
Flag: EXEMPT bugfix
Test: Manual testing
atest -c SystemUiRoboTests:InternetAdapterTest \
         SystemUiRoboTestsInplace:InternetAdapterTest
atest -c SystemUITests:InternetDialogDelegateControllerTest

Change-Id: I0cfd225b243555b333a6658f9501c356e9313c7c
parent 81f387f4
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@ import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.anyString;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;

@@ -231,7 +232,8 @@ public class InternetAdapterTest extends SysuiTestCase {

        mViewHolder.onWifiClick(mWifiEntry, mock(View.class));

        verify(mSpyContext).startActivity(any());
        verify(mInternetDialogController).startActivityForDialog(any());
        verify(mSpyContext, never()).startActivity(any());
    }

    @Test
+2 −2
Original line number Diff line number Diff line
@@ -193,7 +193,7 @@ public class InternetAdapter extends RecyclerView.Adapter<InternetAdapter.Intern
                if (mJob == null) {
                    mJob = WifiUtils.checkWepAllowed(mContext, mCoroutineScope, wifiEntry.getSsid(),
                            WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG, intent -> {
                                mInternetDialogController.startActivity(intent, view);
                                mInternetDialogController.startActivityForDialog(intent);
                                return null;
                            }, () -> {
                                wifiConnect(wifiEntry, view);
@@ -211,7 +211,7 @@ public class InternetAdapter extends RecyclerView.Adapter<InternetAdapter.Intern
                        true /* connectForCaller */);
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
                mContext.startActivity(intent);
                mInternetDialogController.startActivityForDialog(intent);
                return;
            }

+4 −0
Original line number Diff line number Diff line
@@ -781,6 +781,10 @@ public class InternetDialogController implements AccessPointController.AccessPoi
        mActivityStarter.postStartActivityDismissingKeyguard(intent, 0, controller);
    }

    void startActivityForDialog(Intent intent) {
        mActivityStarter.startActivity(intent, false /* dismissShade */);
    }

    void launchNetworkSetting(View view) {
        startActivity(getSettingsIntent(), view);
    }
+7 −0
Original line number Diff line number Diff line
@@ -556,6 +556,13 @@ public class InternetDialogDelegateControllerTest extends SysuiTestCase {
        assertThat(mInternetDialogController.getWifiDrawable(entry)).isEqualTo(hotspotDrawable);
    }

    @Test
    public void startActivityForDialog_always_startActivityWithoutDismissShade() {
        mInternetDialogController.startActivityForDialog(mock(Intent.class));

        verify(mActivityStarter).startActivity(any(Intent.class), eq(false) /* dismissShade */);
    }

    @Test
    public void launchWifiDetailsSetting_withNoWifiEntryKey_doNothing() {
        mInternetDialogController.launchWifiDetailsSetting(null /* key */, mDialogLaunchView);