OSDN Git Service

Request support rules to refresh when account changes.
authorFan Zhang <zhfan@google.com>
Tue, 12 Jul 2016 21:10:22 +0000 (14:10 -0700)
committerFan Zhang <zhfan@google.com>
Tue, 12 Jul 2016 23:42:40 +0000 (16:42 -0700)
Bug: 30079512

When account is added, operation rule can potentially change. Request a
refresh to make sure user sees the latest UI.

Change-Id: I89e9d97bec22d612ca3602d86cc63f8f06355a39

src/com/android/settings/dashboard/SupportItemAdapter.java
src/com/android/settings/overlay/SupportFeatureProvider.java

index 52440e9..1d4e99a 100644 (file)
@@ -89,7 +89,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd
         } else {
             mSelectedCountry = mSupportFeatureProvider.getCurrentCountryCodeIfHasConfig(PHONE);
         }
-        setAccount(mSupportFeatureProvider.getSupportEligibleAccount(mActivity));
+        mAccount = mSupportFeatureProvider.getSupportEligibleAccount(mActivity);
         refreshData();
     }
 
@@ -155,6 +155,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd
     public void setAccount(Account account) {
         if (!Objects.equals(mAccount, account)) {
             mAccount = account;
+            mSupportFeatureProvider.refreshOperationRules();
             refreshData();
         }
     }
index 4d8e3d6..45713e4 100644 (file)
@@ -52,6 +52,11 @@ public interface SupportFeatureProvider {
     boolean isSupportTypeEnabled(Context context, @SupportType int type);
 
     /**
+     * Refreshes all operation rules.
+     */
+    void refreshOperationRules();
+
+    /**
      * Whether or not a support type is in operation 24/7. If country is null, use
      * current country.
      */