Request support rules to refresh when account changes.

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
This commit is contained in:
Fan Zhang
2016-07-12 14:10:22 -07:00
parent 8dc1a7340b
commit eadc7dc815
2 changed files with 7 additions and 1 deletions

View File

@@ -89,7 +89,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd
} else { } else {
mSelectedCountry = mSupportFeatureProvider.getCurrentCountryCodeIfHasConfig(PHONE); mSelectedCountry = mSupportFeatureProvider.getCurrentCountryCodeIfHasConfig(PHONE);
} }
setAccount(mSupportFeatureProvider.getSupportEligibleAccount(mActivity)); mAccount = mSupportFeatureProvider.getSupportEligibleAccount(mActivity);
refreshData(); refreshData();
} }
@@ -155,6 +155,7 @@ public final class SupportItemAdapter extends RecyclerView.Adapter<SupportItemAd
public void setAccount(Account account) { public void setAccount(Account account) {
if (!Objects.equals(mAccount, account)) { if (!Objects.equals(mAccount, account)) {
mAccount = account; mAccount = account;
mSupportFeatureProvider.refreshOperationRules();
refreshData(); refreshData();
} }
} }

View File

@@ -51,6 +51,11 @@ public interface SupportFeatureProvider {
*/ */
boolean isSupportTypeEnabled(Context context, @SupportType int type); 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 * Whether or not a support type is in operation 24/7. If country is null, use
* current country. * current country.