Loading AndroidManifest.xml +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ android:value="true" /> </activity> <activity android:name=".SettingsHomepageActivity" <activity android:name=".homepage.SettingsHomepageActivity" android:taskAffinity="com.android.settings.root" android:label="@string/settings_label_launcher" android:theme="@style/Theme.Settings.Home" Loading @@ -136,7 +136,7 @@ android:taskAffinity="com.android.settings.root" android:label="@string/settings_label_launcher" android:launchMode="singleTask" android:targetActivity=".SettingsHomepageActivity"> android:targetActivity=".homepage.SettingsHomepageActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> Loading src/com/android/settings/SettingsActivity.java +1 −0 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.gateway.SettingsGateway; import com.android.settings.dashboard.DashboardFeatureProvider; import com.android.settings.dashboard.DashboardSummary; import com.android.settings.homepage.SettingsHomepageActivity; import com.android.settings.homepage.TopLevelSettings; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.DeviceIndexFeatureProvider; Loading src/com/android/settings/homepage/ContextualCardManager.java +13 −10 Original line number Diff line number Diff line Loading @@ -28,14 +28,14 @@ import java.util.List; /** * This is a centralized manager of multiple {@link ContextualCardController}. * * {@link ContextualCardManager} first loads data from {@link CardContentLoader} and gets back a list of * {@link ContextualCard}. All subclasses of {@link ContextualCardController} are loaded here, which * will then trigger the {@link ContextualCardController} to load its data and listen to * {@link ContextualCardManager} first loads data from {@link CardContentLoader} and gets back a * list of {@link ContextualCard}. All subclasses of {@link ContextualCardController} are loaded * here, which will then trigger the {@link ContextualCardController} to load its data and listen to * corresponding changes. When every single {@link ContextualCardController} updates its data, the * data will be passed here, then going through some sorting mechanisms. The * {@link ContextualCardController} will end up building a list of {@link ContextualCard} for {@link * ContextualCardsAdapter} and {@link BaseAdapter#notifyDataSetChanged()} will be called to get the page * refreshed. * {@link ContextualCardController} will end up building a list of {@link ContextualCard} for * {@link ContextualCardsAdapter} and {@link BaseAdapter#notifyDataSetChanged()} will be called to * get the page refreshed. */ public class ContextualCardManager implements CardContentLoader.CardContentLoaderListener, ContextualCardUpdateListener { Loading @@ -48,8 +48,8 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade private final Context mContext; private final ControllerRendererPool mControllerRendererPool; private final Lifecycle mLifecycle; private final List<ContextualCard> mContextualCards; private List<ContextualCard> mContextualCards; private ContextualCardUpdateListener mListener; Loading Loading @@ -97,7 +97,7 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade } @Override public void onHomepageCardUpdated(int cardType, List<ContextualCard> updateList) { public void onContextualCardUpdated(int cardType, List<ContextualCard> updateList) { //TODO(b/112245748): Should implement a DiffCallback. //Keep the old list for comparison. final List<ContextualCard> prevCards = mContextualCards; Loading @@ -115,13 +115,16 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade sortCards(); if (mListener != null) { mListener.onHomepageCardUpdated(ContextualCard.CardType.INVALID, mContextualCards); mListener.onContextualCardUpdated(ContextualCard.CardType.INVALID, mContextualCards); } } @Override public void onFinishCardLoading(List<ContextualCard> contextualCards) { mContextualCards = contextualCards; mContextualCards.clear(); if (contextualCards != null) { mContextualCards.addAll(contextualCards); } //Force card sorting here in case CardControllers of custom view have nothing to update // for the first launch. Loading src/com/android/settings/homepage/ContextualCardUpdateListener.java +5 −5 Original line number Diff line number Diff line Loading @@ -19,13 +19,13 @@ package com.android.settings.homepage; import java.util.List; /** * When {@link ContextualCardController} detects changes, it will notify the listeners registered. In * our case, {@link ContextualCardManager} gets noticed. * When {@link ContextualCardController} detects changes, it will notify the listeners registered. * In our case, {@link ContextualCardManager} gets noticed. * * After the list of {@link ContextualCard} gets updated in{@link ContextualCardManager}, * {@link ContextualCardManager} will notify the listeners registered, {@link ContextualCardsAdapter} in this * case. * {@link ContextualCardManager} will notify the listeners registered, {@link * ContextualCardsAdapter} in this case. */ public interface ContextualCardUpdateListener { void onHomepageCardUpdated(int cardType, List<ContextualCard> updateList); void onContextualCardUpdated(int cardType, List<ContextualCard> updateList); } No newline at end of file src/com/android/settings/homepage/ContextualCardsAdapter.java +4 −4 Original line number Diff line number Diff line Loading @@ -37,8 +37,7 @@ public class ContextualCardsAdapter extends RecyclerView.Adapter<RecyclerView.Vi private final Context mContext; private final ControllerRendererPool mControllerRendererPool; private List<ContextualCard> mContextualCards; private final List<ContextualCard> mContextualCards; public ContextualCardsAdapter(Context context, ContextualCardManager manager) { mContext = context; Loading Loading @@ -102,13 +101,14 @@ public class ContextualCardsAdapter extends RecyclerView.Adapter<RecyclerView.Vi } @Override public void onHomepageCardUpdated(int cardType, List<ContextualCard> contextualCards) { public void onContextualCardUpdated(int cardType, List<ContextualCard> contextualCards) { //TODO(b/112245748): Should implement a DiffCallback so we can use notifyItemChanged() // instead. if (contextualCards == null) { mContextualCards.clear(); } else { mContextualCards = contextualCards; mContextualCards.clear(); mContextualCards.addAll(contextualCards); } notifyDataSetChanged(); } Loading Loading
AndroidManifest.xml +2 −2 Original line number Diff line number Diff line Loading @@ -124,7 +124,7 @@ android:value="true" /> </activity> <activity android:name=".SettingsHomepageActivity" <activity android:name=".homepage.SettingsHomepageActivity" android:taskAffinity="com.android.settings.root" android:label="@string/settings_label_launcher" android:theme="@style/Theme.Settings.Home" Loading @@ -136,7 +136,7 @@ android:taskAffinity="com.android.settings.root" android:label="@string/settings_label_launcher" android:launchMode="singleTask" android:targetActivity=".SettingsHomepageActivity"> android:targetActivity=".homepage.SettingsHomepageActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> Loading
src/com/android/settings/SettingsActivity.java +1 −0 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.gateway.SettingsGateway; import com.android.settings.dashboard.DashboardFeatureProvider; import com.android.settings.dashboard.DashboardSummary; import com.android.settings.homepage.SettingsHomepageActivity; import com.android.settings.homepage.TopLevelSettings; import com.android.settings.overlay.FeatureFactory; import com.android.settings.search.DeviceIndexFeatureProvider; Loading
src/com/android/settings/homepage/ContextualCardManager.java +13 −10 Original line number Diff line number Diff line Loading @@ -28,14 +28,14 @@ import java.util.List; /** * This is a centralized manager of multiple {@link ContextualCardController}. * * {@link ContextualCardManager} first loads data from {@link CardContentLoader} and gets back a list of * {@link ContextualCard}. All subclasses of {@link ContextualCardController} are loaded here, which * will then trigger the {@link ContextualCardController} to load its data and listen to * {@link ContextualCardManager} first loads data from {@link CardContentLoader} and gets back a * list of {@link ContextualCard}. All subclasses of {@link ContextualCardController} are loaded * here, which will then trigger the {@link ContextualCardController} to load its data and listen to * corresponding changes. When every single {@link ContextualCardController} updates its data, the * data will be passed here, then going through some sorting mechanisms. The * {@link ContextualCardController} will end up building a list of {@link ContextualCard} for {@link * ContextualCardsAdapter} and {@link BaseAdapter#notifyDataSetChanged()} will be called to get the page * refreshed. * {@link ContextualCardController} will end up building a list of {@link ContextualCard} for * {@link ContextualCardsAdapter} and {@link BaseAdapter#notifyDataSetChanged()} will be called to * get the page refreshed. */ public class ContextualCardManager implements CardContentLoader.CardContentLoaderListener, ContextualCardUpdateListener { Loading @@ -48,8 +48,8 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade private final Context mContext; private final ControllerRendererPool mControllerRendererPool; private final Lifecycle mLifecycle; private final List<ContextualCard> mContextualCards; private List<ContextualCard> mContextualCards; private ContextualCardUpdateListener mListener; Loading Loading @@ -97,7 +97,7 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade } @Override public void onHomepageCardUpdated(int cardType, List<ContextualCard> updateList) { public void onContextualCardUpdated(int cardType, List<ContextualCard> updateList) { //TODO(b/112245748): Should implement a DiffCallback. //Keep the old list for comparison. final List<ContextualCard> prevCards = mContextualCards; Loading @@ -115,13 +115,16 @@ public class ContextualCardManager implements CardContentLoader.CardContentLoade sortCards(); if (mListener != null) { mListener.onHomepageCardUpdated(ContextualCard.CardType.INVALID, mContextualCards); mListener.onContextualCardUpdated(ContextualCard.CardType.INVALID, mContextualCards); } } @Override public void onFinishCardLoading(List<ContextualCard> contextualCards) { mContextualCards = contextualCards; mContextualCards.clear(); if (contextualCards != null) { mContextualCards.addAll(contextualCards); } //Force card sorting here in case CardControllers of custom view have nothing to update // for the first launch. Loading
src/com/android/settings/homepage/ContextualCardUpdateListener.java +5 −5 Original line number Diff line number Diff line Loading @@ -19,13 +19,13 @@ package com.android.settings.homepage; import java.util.List; /** * When {@link ContextualCardController} detects changes, it will notify the listeners registered. In * our case, {@link ContextualCardManager} gets noticed. * When {@link ContextualCardController} detects changes, it will notify the listeners registered. * In our case, {@link ContextualCardManager} gets noticed. * * After the list of {@link ContextualCard} gets updated in{@link ContextualCardManager}, * {@link ContextualCardManager} will notify the listeners registered, {@link ContextualCardsAdapter} in this * case. * {@link ContextualCardManager} will notify the listeners registered, {@link * ContextualCardsAdapter} in this case. */ public interface ContextualCardUpdateListener { void onHomepageCardUpdated(int cardType, List<ContextualCard> updateList); void onContextualCardUpdated(int cardType, List<ContextualCard> updateList); } No newline at end of file
src/com/android/settings/homepage/ContextualCardsAdapter.java +4 −4 Original line number Diff line number Diff line Loading @@ -37,8 +37,7 @@ public class ContextualCardsAdapter extends RecyclerView.Adapter<RecyclerView.Vi private final Context mContext; private final ControllerRendererPool mControllerRendererPool; private List<ContextualCard> mContextualCards; private final List<ContextualCard> mContextualCards; public ContextualCardsAdapter(Context context, ContextualCardManager manager) { mContext = context; Loading Loading @@ -102,13 +101,14 @@ public class ContextualCardsAdapter extends RecyclerView.Adapter<RecyclerView.Vi } @Override public void onHomepageCardUpdated(int cardType, List<ContextualCard> contextualCards) { public void onContextualCardUpdated(int cardType, List<ContextualCard> contextualCards) { //TODO(b/112245748): Should implement a DiffCallback so we can use notifyItemChanged() // instead. if (contextualCards == null) { mContextualCards.clear(); } else { mContextualCards = contextualCards; mContextualCards.clear(); mContextualCards.addAll(contextualCards); } notifyDataSetChanged(); } Loading