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

Commit be15baa1 authored by Yanting Yang's avatar Yanting Yang Committed by Android (Google) Code Review
Browse files

Merge "Remove dismissal behavior from deferred setup card"

parents 131eeac4 52367e8c
Loading
Loading
Loading
Loading
+39 −49
Original line number Diff line number Diff line
@@ -21,11 +21,6 @@
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ViewFlipper
        android:id="@+id/view_flipper"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    <LinearLayout
        android:id="@+id/content"
        android:layout_width="match_parent"
@@ -71,9 +66,4 @@
            android:text="@string/suggestion_button_text"/>

    </LinearLayout>

        <!--dismissal view-->
        <include layout="@layout/homepage_dismissal_view"/>

    </ViewFlipper>
</com.google.android.material.card.MaterialCardView>
 No newline at end of file
+2 −0
Original line number Diff line number Diff line
@@ -139,6 +139,8 @@ public class SliceContextualCardRenderer implements ContextualCardRenderer, Life

        switch (holder.getItemViewType()) {
            case VIEW_TYPE_DEFERRED_SETUP:
                // Deferred setup is never dismissible.
                break;
            case VIEW_TYPE_HALF_WIDTH:
                initDismissalActions(holder, card, R.id.content);
                break;
+23 −0
Original line number Diff line number Diff line
@@ -16,11 +16,13 @@

package com.android.settings.homepage.contextualcards.slices;

import static com.android.settings.homepage.contextualcards.slices.SliceContextualCardRenderer.VIEW_TYPE_DEFERRED_SETUP;
import static com.android.settings.homepage.contextualcards.slices.SliceContextualCardRenderer.VIEW_TYPE_FULL_WIDTH;

import static com.google.common.truth.Truth.assertThat;

import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;

import android.app.Activity;
@@ -128,6 +130,15 @@ public class SliceContextualCardRendererTest {
        assertThat(viewFlipper.getCurrentView()).isEqualTo(dismissalView);
    }

    @Test
    public void longClick_deferredSetupCard_shouldNotBeClickable() {
        final RecyclerView.ViewHolder viewHolder = getDeferredSetupViewHolder();
        final View contentView = viewHolder.itemView.findViewById(R.id.content);
        mRenderer.bindView(viewHolder, buildContextualCard(TEST_SLICE_URI));

        assertThat(contentView.isLongClickable()).isFalse();
    }

    @Test
    public void longClick_shouldAddViewHolderToSet() {
        final RecyclerView.ViewHolder viewHolder = getSliceViewHolder();
@@ -221,6 +232,18 @@ public class SliceContextualCardRendererTest {
        return mRenderer.createViewHolder(view, VIEW_TYPE_FULL_WIDTH);
    }

    private RecyclerView.ViewHolder getDeferredSetupViewHolder() {
        final RecyclerView recyclerView = new RecyclerView(mActivity);
        recyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
        final View view = LayoutInflater.from(mActivity).inflate(VIEW_TYPE_DEFERRED_SETUP,
                recyclerView, false);
        final RecyclerView.ViewHolder viewHolder = spy(
                mRenderer.createViewHolder(view, VIEW_TYPE_DEFERRED_SETUP));
        doReturn(VIEW_TYPE_DEFERRED_SETUP).when(viewHolder).getItemViewType();

        return viewHolder;
    }

    private ContextualCard buildContextualCard(Uri sliceUri) {
        return new ContextualCard.Builder()
                .setName("test_name")