Merge "Clean up the main architecture of Contextual Settings Homepage."

This commit is contained in:
TreeHugger Robot
2018-08-28 16:02:42 +00:00
committed by Android (Google) Code Review
5 changed files with 32 additions and 30 deletions

View File

@@ -56,7 +56,8 @@ public class HomepageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int cardType) {
final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext, cardType);
final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext,
cardType);
final int viewType = renderer.getViewType();
final View view = LayoutInflater.from(parent.getContext()).inflate(viewType, parent, false);
@@ -66,7 +67,8 @@ public class HomepageAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolde
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
final int cardType = mHomepageCards.get(position).getCardType();
final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext, cardType);
final HomepageCardRenderer renderer = mControllerRendererPool.getRenderer(mContext,
cardType);
renderer.bindView(holder, mHomepageCards.get(position));
}

View File

@@ -44,7 +44,7 @@ public class HomepageCard {
private final String mName;
@CardType
private final int mCardType;
private final double mScore;
private final double mRankingScore;
private final String mSliceUri;
private final int mCategory;
private final String mLocalizedToLocale;
@@ -58,8 +58,8 @@ public class HomepageCard {
private final int mIconResId;
private final int mCardAction;
private final long mExpireTimeMS;
private final Drawable mDrawable;
private final boolean mSupportHalfWidth;
private final Drawable mIconDrawable;
private final boolean mIsHalfWidth;
String getName() {
return mName;
@@ -69,8 +69,8 @@ public class HomepageCard {
return mCardType;
}
double getScore() {
return mScore;
double getRankingScore() {
return mRankingScore;
}
String getTextSliceUri() {
@@ -129,18 +129,18 @@ public class HomepageCard {
return mExpireTimeMS;
}
Drawable getDrawable() {
return mDrawable;
Drawable getIconDrawable() {
return mIconDrawable;
}
boolean getSupportHalfWidth() {
return mSupportHalfWidth;
boolean isHalfWidth() {
return mIsHalfWidth;
}
HomepageCard(Builder builder) {
mName = builder.mName;
mCardType = builder.mCardType;
mScore = builder.mScore;
mRankingScore = builder.mRankingScore;
mSliceUri = builder.mSliceUri;
mCategory = builder.mCategory;
mLocalizedToLocale = builder.mLocalizedToLocale;
@@ -154,8 +154,8 @@ public class HomepageCard {
mIconResId = builder.mIconResId;
mCardAction = builder.mCardAction;
mExpireTimeMS = builder.mExpireTimeMS;
mDrawable = builder.mDrawable;
mSupportHalfWidth = builder.mSupportHalfWidth;
mIconDrawable = builder.mIconDrawable;
mIsHalfWidth = builder.mIsHalfWidth;
}
@Override
@@ -182,7 +182,7 @@ public class HomepageCard {
static class Builder {
private String mName;
private int mCardType;
private double mScore;
private double mRankingScore;
private String mSliceUri;
private int mCategory;
private String mLocalizedToLocale;
@@ -196,8 +196,8 @@ public class HomepageCard {
private int mIconResId;
private int mCardAction;
private long mExpireTimeMS;
private Drawable mDrawable;
private boolean mSupportHalfWidth;
private Drawable mIconDrawable;
private boolean mIsHalfWidth;
public Builder setName(String name) {
mName = name;
@@ -209,8 +209,8 @@ public class HomepageCard {
return this;
}
public Builder setScore(double score) {
mScore = score;
public Builder setRankingScore(double rankingScore) {
mRankingScore = rankingScore;
return this;
}
@@ -279,13 +279,13 @@ public class HomepageCard {
return this;
}
public Builder setDrawable(Drawable drawable) {
mDrawable = drawable;
public Builder setIconDrawable(Drawable iconDrawable) {
mIconDrawable = iconDrawable;
return this;
}
public Builder setSupportHalfWidth(boolean supportHalfWidth) {
mSupportHalfWidth = supportHalfWidth;
public Builder setIsHalfWidth(boolean isHalfWidth) {
mIsHalfWidth = isHalfWidth;
return this;
}

View File

@@ -16,11 +16,10 @@
package com.android.settings.homepage;
import com.android.settingslib.core.lifecycle.Lifecycle;
import java.util.List;
//TODO(b/111821137): add test cases
/**
* Data controller for {@link HomepageCard}.
*/
@@ -39,7 +38,5 @@ public interface HomepageCardController {
void onActionClick(HomepageCard card);
void setLifecycle(Lifecycle lifecycle);
void setHomepageCardUpdateListener(HomepageCardUpdateListener listener);
}

View File

@@ -44,10 +44,8 @@ public class HomepageCardLookupTable {
}
private static final Set<HomepageMapping> LOOKUP_TABLE = new TreeSet<HomepageMapping>() {
{
//add(new HomepageMapping(CardType.CONDITIONAL, ConditionHomepageCardController.class,
// ConditionHomepageCardRenderer.class));
}
};
public static Class<? extends HomepageCardController> getCardControllerClass(

View File

@@ -20,6 +20,7 @@ import android.content.Context;
import android.widget.BaseAdapter;
import com.android.settingslib.core.lifecycle.Lifecycle;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import java.util.ArrayList;
import java.util.List;
@@ -82,7 +83,11 @@ public class HomepageManager implements CardContentLoader.CardContentLoaderListe
cardType);
if (controller != null) {
controller.setHomepageCardUpdateListener(this);
controller.setLifecycle(mLifecycle);
if (controller instanceof LifecycleObserver) {
if (mLifecycle != null) {
mLifecycle.addObserver((LifecycleObserver) controller);
}
}
}
}