From ae9059174981c1d100363d184bccfc354392ee05 Mon Sep 17 00:00:00 2001 From: Emily Chuang Date: Tue, 28 Aug 2018 18:25:20 +0800 Subject: [PATCH] Clean up the main architecture of Contextual Settings Homepage. - Add lifecycle observer in HomepageManager. - Rename some variables. Bug: 111676964 Test: robotests Change-Id: Ic91c53f2c1622d602b3edc664a06a13aa6945f47 --- .../settings/homepage/HomepageAdapter.java | 6 ++- .../settings/homepage/HomepageCard.java | 42 +++++++++---------- .../homepage/HomepageCardController.java | 5 +-- .../homepage/HomepageCardLookupTable.java | 2 - .../settings/homepage/HomepageManager.java | 7 +++- 5 files changed, 32 insertions(+), 30 deletions(-) diff --git a/src/com/android/settings/homepage/HomepageAdapter.java b/src/com/android/settings/homepage/HomepageAdapter.java index b44288337d4..9ff52603dab 100644 --- a/src/com/android/settings/homepage/HomepageAdapter.java +++ b/src/com/android/settings/homepage/HomepageAdapter.java @@ -56,7 +56,8 @@ public class HomepageAdapter extends RecyclerView.Adapter LOOKUP_TABLE = new TreeSet() { - { //add(new HomepageMapping(CardType.CONDITIONAL, ConditionHomepageCardController.class, // ConditionHomepageCardRenderer.class)); - } }; public static Class getCardControllerClass( diff --git a/src/com/android/settings/homepage/HomepageManager.java b/src/com/android/settings/homepage/HomepageManager.java index cbd5841d2cf..61d7ce7c713 100644 --- a/src/com/android/settings/homepage/HomepageManager.java +++ b/src/com/android/settings/homepage/HomepageManager.java @@ -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); + } + } } }