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

Commit bc7867f5 authored by Ying Xu's avatar Ying Xu Committed by Automerger Merge Worker
Browse files

Merge "Update the WiFiInfo in the InternetTile when qsIcon is null" into tm-qpr-dev am: f25d4542

parents b85a04e2 f25d4542
Loading
Loading
Loading
Loading
+10 −8
Original line number Diff line number Diff line
@@ -255,17 +255,19 @@ public class InternetTile extends QSTileImpl<SignalState> {
                Log.d(TAG, "setWifiIndicators: " + indicators);
            }
            mWifiInfo.mEnabled = indicators.enabled;
            if (indicators.qsIcon == null) {
                return;
            }
            mWifiInfo.mConnected = indicators.qsIcon.visible;
            mWifiInfo.mWifiSignalIconId = indicators.qsIcon.icon;
            mWifiInfo.mWifiSignalContentDescription = indicators.qsIcon.contentDescription;
            mWifiInfo.mEnabled = indicators.enabled;
            mWifiInfo.mSsid = indicators.description;
            mWifiInfo.mIsTransient = indicators.isTransient;
            mWifiInfo.mStatusLabel = indicators.statusLabel;
            if (indicators.qsIcon != null) {
                mWifiInfo.mConnected = indicators.qsIcon.visible;
                mWifiInfo.mWifiSignalIconId = indicators.qsIcon.icon;
                mWifiInfo.mWifiSignalContentDescription = indicators.qsIcon.contentDescription;
                refreshState(mWifiInfo);
            } else {
                mWifiInfo.mConnected = false;
                mWifiInfo.mWifiSignalIconId = 0;
                mWifiInfo.mWifiSignalContentDescription = null;
            }
        }

        @Override
+22 −0
Original line number Diff line number Diff line
@@ -37,10 +37,12 @@ import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.qs.QSTileHost;
import com.android.systemui.qs.logging.QSLogger;
import com.android.systemui.qs.tileimpl.QSTileImpl;
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 com.android.systemui.statusbar.connectivity.WifiIndicators;

import org.junit.Before;
import org.junit.Test;
@@ -135,4 +137,24 @@ public class InternetTileTest extends SysuiTestCase {
        assertThat(mTile.getState().secondaryLabel)
            .isNotEqualTo(mContext.getString(R.string.status_bar_airplane));
    }

    @Test
    public void setIsAirplaneMode_APM_enabled_after_wifi_disconnected() {
        WifiIndicators wifiIndicators = new WifiIndicators(
            /* enabled= */ true,
            /* statusIcon= */ null,
            /* qsIcon= */ null,
            /* activityIn= */ false,
            /* activityOut= */ false,
            /* description= */ null,
            /* isTransient= */ false,
            /* statusLabel= */ null
        );
        mTile.mSignalCallback.setWifiIndicators(wifiIndicators);
        IconState state = new IconState(true, 0, "");
        mTile.mSignalCallback.setIsAirplaneMode(state);
        mTestableLooper.processAllMessages();
        assertThat(mTile.getState().icon).isEqualTo(
                QSTileImpl.ResourceIcon.get(R.drawable.ic_qs_no_internet_unavailable));
    }
}