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

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

Merge "Use mWifiInfo to refresh Internet Tile when APM is enabled." into...

Merge "Use mWifiInfo to refresh Internet Tile when APM is enabled." into tm-qpr-dev am: 2632266b am: bf1f5fa5

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20654680



Change-Id: Id190c11f54ac5cdf7a3936e69a9b401d7efede94
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 20fc8e8a bf1f5fa5
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -333,7 +333,14 @@ public class InternetTile extends QSTileImpl<SignalState> {
            mCellularInfo.mAirplaneModeEnabled = icon.visible;
            mWifiInfo.mAirplaneModeEnabled = icon.visible;
            if (!mSignalCallback.mEthernetInfo.mConnected) {
                if (mWifiInfo.mEnabled && (mWifiInfo.mWifiSignalIconId > 0)
                // Always use mWifiInfo to refresh the Internet Tile if airplane mode is enabled,
                // because Internet Tile will show different information depending on whether WiFi
                // is enabled or not.
                if (mWifiInfo.mAirplaneModeEnabled) {
                    refreshState(mWifiInfo);
                // If airplane mode is disabled, we will use mWifiInfo to refresh the Internet Tile
                // if WiFi is currently connected to avoid any icon flickering.
                } else if (mWifiInfo.mEnabled && (mWifiInfo.mWifiSignalIconId > 0)
                        && (mWifiInfo.mSsid != null)) {
                    refreshState(mWifiInfo);
                } else {
+22 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ import static org.mockito.Mockito.when;


import android.os.Handler;
import android.service.quicksettings.Tile;
import android.testing.AndroidTestingRunner;
import android.testing.TestableLooper;

@@ -38,6 +39,7 @@ import com.android.systemui.qs.QSTileHost;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tiles.dialog.InternetDialogFactory;
import com.android.systemui.statusbar.connectivity.AccessPointController;
import com.android.systemui.statusbar.connectivity.IconState;
import com.android.systemui.statusbar.connectivity.NetworkController;

import org.junit.Before;
@@ -113,4 +115,24 @@ public class InternetTileTest extends SysuiTestCase {
            .isNotEqualTo(mContext.getString(R.string.quick_settings_networks_available));
        assertThat(mTile.getLastTileState()).isEqualTo(-1);
    }

    @Test
    public void setIsAirplaneMode_APM_enabled_wifi_disabled() {
        IconState state = new IconState(true, 0, "");
        mTile.mSignalCallback.setIsAirplaneMode(state);
        mTestableLooper.processAllMessages();
        assertThat(mTile.getState().state).isEqualTo(Tile.STATE_INACTIVE);
        assertThat(mTile.getState().secondaryLabel)
            .isEqualTo(mContext.getString(R.string.status_bar_airplane));
    }

    @Test
    public void setIsAirplaneMode_APM_enabled_wifi_enabled() {
        IconState state = new IconState(false, 0, "");
        mTile.mSignalCallback.setIsAirplaneMode(state);
        mTestableLooper.processAllMessages();
        assertThat(mTile.getState().state).isEqualTo(Tile.STATE_ACTIVE);
        assertThat(mTile.getState().secondaryLabel)
            .isNotEqualTo(mContext.getString(R.string.status_bar_airplane));
    }
}