fix(brightness suw): Hide brightness preference in the suw.
Root cause: there's a mismatch in how visibility is determined for
the AutoBrightnessPreferenceControllerForSetupWizard. The
getAvailabilityStatus method and the displayPreference method
(specifically the preference.setVisible call) use different
conditions for showing the preference.
Solution: To ensure consistency, I propose aligning these conditions
by incorporating an aconfig flag check in both places. This will
prevent unexpected behavior and make the logic clearer.
Bug: 389011125
Flag: com.android.settings.accessibility.add_brightness_settings_in_suw
Test: atest AutoBrightnessPreferenceControllerForSetupWizardTest
BrightnessLevelPreferenceControllerForSetupWizardTest
Change-Id: I004bfe8b1e039734356715c971f0bfbe56ffa9db
This commit is contained in:
@@ -49,12 +49,11 @@ public class AutoBrightnessPreferenceControllerForSetupWizard
|
||||
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
Preference preference = screen.findPreference(getPreferenceKey());
|
||||
final Preference preference = screen.findPreference(getPreferenceKey());
|
||||
if (preference instanceof RestrictedPreferenceHelperProvider helperProvider) {
|
||||
mRestrictedPreferenceHelper = helperProvider.getRestrictedPreferenceHelper();
|
||||
preference.setVisible(!isRestricted());
|
||||
}
|
||||
super.displayPreference(screen);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -70,4 +69,4 @@ public class AutoBrightnessPreferenceControllerForSetupWizard
|
||||
public CharSequence getSummary() {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -52,12 +52,11 @@ public class BrightnessLevelPreferenceControllerForSetupWizard extends
|
||||
|
||||
@Override
|
||||
public void displayPreference(PreferenceScreen screen) {
|
||||
super.displayPreference(screen);
|
||||
Preference preference = screen.findPreference(getPreferenceKey());
|
||||
final Preference preference = screen.findPreference(getPreferenceKey());
|
||||
if (preference instanceof RestrictedPreferenceHelperProvider helperProvider) {
|
||||
mRestrictedPreferenceHelper = helperProvider.getRestrictedPreferenceHelper();
|
||||
preference.setVisible(!isRestricted());
|
||||
}
|
||||
super.displayPreference(screen);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -68,4 +67,4 @@ public class BrightnessLevelPreferenceControllerForSetupWizard extends
|
||||
}
|
||||
return super.getAvailabilityStatus();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user