Merge "Fix the "Add link" permanent disabled problem" into sc-dev

This commit is contained in:
Sunny Shao
2021-03-30 11:41:29 +00:00
committed by Android (Google) Code Review

View File

@@ -86,6 +86,7 @@ public class AppLaunchSettings extends AppInfoBase implements
private ClearDefaultsPreference mClearDefaultsPreference; private ClearDefaultsPreference mClearDefaultsPreference;
private MainSwitchPreference mMainSwitchPreference; private MainSwitchPreference mMainSwitchPreference;
private Preference mAddLinkPreference;
private PreferenceCategory mMainPreferenceCategory; private PreferenceCategory mMainPreferenceCategory;
private PreferenceCategory mSelectedLinksPreferenceCategory; private PreferenceCategory mSelectedLinksPreferenceCategory;
private PreferenceCategory mOtherDefaultsPreferenceCategory; private PreferenceCategory mOtherDefaultsPreferenceCategory;
@@ -155,6 +156,7 @@ public class AppLaunchSettings extends AppInfoBase implements
} }
setDomainVerificationUserSelection(userState.getIdentifier(), domainSet, /* enabled= */ setDomainVerificationUserSelection(userState.getIdentifier(), domainSet, /* enabled= */
false); false);
mAddLinkPreference.setEnabled(isAddLinksNotEmpty());
} }
return true; return true;
} }
@@ -209,8 +211,8 @@ public class AppLaunchSettings extends AppInfoBase implements
initMainSwitchAndCategories(); initMainSwitchAndCategories();
if (canUpdateMainSwitchAndCategories()) { if (canUpdateMainSwitchAndCategories()) {
initVerifiedLinksPreference(); initVerifiedLinksPreference();
addSelectedLinksPreference();
initAddLinkPreference(); initAddLinkPreference();
addSelectedLinksPreference();
initFooter(); initFooter();
} }
} }
@@ -293,7 +295,7 @@ public class AppLaunchSettings extends AppInfoBase implements
} }
/** Add selected links items */ /** Add selected links items */
public void addSelectedLinksPreference() { void addSelectedLinksPreference() {
if (getLinksNumber(DOMAIN_STATE_SELECTED) == 0) { if (getLinksNumber(DOMAIN_STATE_SELECTED) == 0) {
return; return;
} }
@@ -303,14 +305,14 @@ public class AppLaunchSettings extends AppInfoBase implements
for (String host : selectedLinks) { for (String host : selectedLinks) {
generateCheckBoxPreference(mSelectedLinksPreferenceCategory, host); generateCheckBoxPreference(mSelectedLinksPreferenceCategory, host);
} }
mAddLinkPreference.setEnabled(isAddLinksNotEmpty());
} }
/** Initialize add link preference */ /** Initialize add link preference */
private void initAddLinkPreference() { private void initAddLinkPreference() {
final Preference addLinkPreference = findPreference(ADD_LINK_PREF_KEY); mAddLinkPreference = findPreference(ADD_LINK_PREF_KEY);
if (addLinkPreference != null) { mAddLinkPreference.setEnabled(isAddLinksNotEmpty());
addLinkPreference.setEnabled(getLinksNumber(DOMAIN_STATE_NONE) > 0); mAddLinkPreference.setOnPreferenceClickListener(preference -> {
addLinkPreference.setOnPreferenceClickListener(preference -> {
final int stateNoneLinksNo = getLinksNumber(DOMAIN_STATE_NONE); final int stateNoneLinksNo = getLinksNumber(DOMAIN_STATE_NONE);
IntentPickerUtils.logd("The number of the state none links: " + stateNoneLinksNo); IntentPickerUtils.logd("The number of the state none links: " + stateNoneLinksNo);
if (stateNoneLinksNo > 0) { if (stateNoneLinksNo > 0) {
@@ -319,6 +321,9 @@ public class AppLaunchSettings extends AppInfoBase implements
return true; return true;
}); });
} }
private boolean isAddLinksNotEmpty() {
return getLinksNumber(DOMAIN_STATE_NONE) > 0;
} }
private void showProgressDialogFragment() { private void showProgressDialogFragment() {