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

Commit b34a3ec1 authored by Android Build Merger (Role)'s avatar Android Build Merger (Role) Committed by Android (Google) Code Review
Browse files

Merge "Merge "MobileData slice should be null if not-actionable" into qt-dev...

Merge "Merge "MobileData slice should be null if not-actionable" into qt-dev am: e2ab7540 am: 1601d41f am: ae7ca413"
parents ce7b012f a891dd87
Loading
Loading
Loading
Loading
+4 −22
Original line number Diff line number Diff line
@@ -78,16 +78,14 @@ public class MobileDataSlice implements CustomSliceable {
        final String title = mContext.getText(R.string.mobile_data_settings_title).toString();
        @ColorInt final int color = Utils.getColorAccentDefaultColor(mContext);

        // Return a Slice without the mobile data toggle when airplane mode is on.
        // Return null until we can show a disabled-action Slice, blaming Airplane mode.
        if (isAirplaneModeEnabled()) {
            return buildUnavailableMobileDataSlice(title,
                    mContext.getText(R.string.mobile_data_ap_mode_disabled), icon, color);
            return null;
        }

        // Return a Slice without the mobile data toggle when mobile data disabled.
        // Return null until we can show a disabled-action Slice.
        if (!isMobileDataAvailable()) {
            return buildUnavailableMobileDataSlice(title,
                    mContext.getText(R.string.sim_cellular_data_unavailable), icon, color);
            return null;
        }

        final CharSequence summary = getSummary();
@@ -201,22 +199,6 @@ public class MobileDataSlice implements CustomSliceable {
        return mTelephonyManager.isDataEnabled();
    }

    private Slice buildUnavailableMobileDataSlice(String title, CharSequence summary,
            IconCompat icon, int color) {
        final PendingIntent intent = PendingIntent.getActivity(mContext, 0 /* requestCode */,
                new Intent(), 0 /* flags */);
        final SliceAction deadAction =
                SliceAction.create(intent, icon, ListBuilder.ICON_IMAGE, title);
        final ListBuilder listBuilder = new ListBuilder(mContext, getUri(),
                ListBuilder.INFINITY)
                .setAccentColor(color)
                .addRow(new ListBuilder.RowBuilder()
                        .setTitle(title)
                        .setSubtitle(summary)
                        .setPrimaryAction(deadAction));
        return listBuilder.build();
    }

    /**
     * Listener for mobile data state changes.
     *
+3 −45
Original line number Diff line number Diff line
@@ -174,21 +174,7 @@ public class MobileDataSliceTest {
        doReturn(new ArrayList<>()).when(mSubscriptionManager).getSelectableSubscriptionInfoList();
        final Slice mobileData = mMobileDataSlice.getSlice();

        final SliceMetadata metadata = SliceMetadata.from(mContext, mobileData);
        assertThat(metadata.getTitle())
                .isEqualTo(mContext.getString(R.string.mobile_data_settings_title));

        assertThat(metadata.getSubtitle())
                .isEqualTo(mContext.getString(R.string.sim_cellular_data_unavailable));

        final List<SliceAction> toggles = metadata.getToggles();
        assertThat(toggles).hasSize(0);

        final SliceAction primaryAction = metadata.getPrimaryAction();
        final PendingIntent pendingIntent = primaryAction.getAction();
        final Intent actionIntent = pendingIntent.getIntent();

        assertThat(actionIntent).isNull();
        assertThat(mobileData).isNull();
    }

    @Test
@@ -196,21 +182,7 @@ public class MobileDataSliceTest {
        doReturn(null).when(mSubscriptionManager).getSelectableSubscriptionInfoList();
        final Slice mobileData = mMobileDataSlice.getSlice();

        final SliceMetadata metadata = SliceMetadata.from(mContext, mobileData);
        assertThat(metadata.getTitle())
                .isEqualTo(mContext.getString(R.string.mobile_data_settings_title));

        assertThat(metadata.getSubtitle())
                .isEqualTo(mContext.getString(R.string.sim_cellular_data_unavailable));

        final List<SliceAction> toggles = metadata.getToggles();
        assertThat(toggles).hasSize(0);

        final SliceAction primaryAction = metadata.getPrimaryAction();
        final PendingIntent pendingIntent = primaryAction.getAction();
        final Intent actionIntent = pendingIntent.getIntent();

        assertThat(actionIntent).isNull();
        assertThat(mobileData).isNull();
    }

    @Test
@@ -219,20 +191,6 @@ public class MobileDataSliceTest {
        doReturn(mSubscriptionInfo).when(mSubscriptionManager).getActiveSubscriptionInfo(SUB_ID);
        final Slice mobileData = mMobileDataSlice.getSlice();

        final SliceMetadata metadata = SliceMetadata.from(mContext, mobileData);
        assertThat(metadata.getTitle())
                .isEqualTo(mContext.getString(R.string.mobile_data_settings_title));

        assertThat(metadata.getSubtitle())
                .isEqualTo(mContext.getString(R.string.mobile_data_ap_mode_disabled));

        final List<SliceAction> toggles = metadata.getToggles();
        assertThat(toggles).hasSize(0);

        final SliceAction primaryAction = metadata.getPrimaryAction();
        final PendingIntent pendingIntent = primaryAction.getAction();
        final Intent actionIntent = pendingIntent.getIntent();

        assertThat(actionIntent).isNull();
        assertThat(mobileData).isNull();
    }
}