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

Commit ccf77774 authored by archichomal's avatar archichomal Committed by Archi Chomal
Browse files

QR Code Scanner tile says "Updating" when GMSCORE is updating

Bug: 257230676
It included changing the QR scanner Tile text to say updating when the GMS core is being updated and the tile is unavailable for the time being.

Change-Id: Ifb6b3d5dae884de8d93ec8f21f323cef168c1937
parent e842874d
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1313,6 +1313,9 @@
    <!-- QR Code Scanner label, title [CHAR LIMIT=32] -->
    <string name="qr_code_scanner_title">QR code scanner</string>

    <!-- QR Code Scanner Secondary label when GMS Core is Updating -->
    <string name="qr_code_scanner_updating_secondary_label">Updating</string>

    <!-- Name of the work status bar icon. -->
    <string name="status_bar_work">Work profile</string>

+4 −0
Original line number Diff line number Diff line
@@ -117,6 +117,10 @@ public class QRCodeScannerTile extends QSTileImpl<QSTile.State> {
        state.icon = ResourceIcon.get(R.drawable.ic_qr_code_scanner);
        state.state = mQRCodeScannerController.isEnabledForQuickSettings() ? Tile.STATE_INACTIVE
                : Tile.STATE_UNAVAILABLE;
        // The assumption is that if the OEM has the QR code scanner module enabled then the scanner
        // would go to "Unavailable" state only when GMS core is updating.
        state.secondaryLabel = state.state == Tile.STATE_UNAVAILABLE
                ? mContext.getString(R.string.qr_code_scanner_updating_secondary_label) : null;
    }

    @Override
+4 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.systemui.qs.tiles;

import static junit.framework.Assert.assertEquals;
import static junit.framework.Assert.assertFalse;
import static junit.framework.Assert.assertNull;

import static org.mockito.Mockito.when;

@@ -112,6 +113,8 @@ public class QRCodeScannerTileTest extends SysuiTestCase {
        QSTile.State state = new QSTile.State();
        mTile.handleUpdateState(state, null);
        assertEquals(state.state, Tile.STATE_UNAVAILABLE);
        assertEquals(state.secondaryLabel.toString(),
                     mContext.getString(R.string.qr_code_scanner_updating_secondary_label));
    }

    @Test
@@ -120,5 +123,6 @@ public class QRCodeScannerTileTest extends SysuiTestCase {
        QSTile.State state = new QSTile.State();
        mTile.handleUpdateState(state, null);
        assertEquals(state.state, Tile.STATE_INACTIVE);
        assertNull(state.secondaryLabel);
    }
}