Show/hide back button for 2nd page
By design, we want to show/hide back button for 2nd layer page when it's in two pane mode. Test: Manual test Bug: 219000314 Change-Id: I14d8d7ee08280d5ce80c0b59e1e91d077f0b6d09
This commit is contained in:
@@ -143,6 +143,8 @@ public class SettingsActivity extends SettingsBaseActivity
|
||||
|
||||
public static final String EXTRA_SHOW_FRAGMENT_AS_SUBSETTING =
|
||||
":settings:show_fragment_as_subsetting";
|
||||
public static final String EXTRA_IS_SECONDARY_LAYER_PAGE =
|
||||
":settings:is_secondary_layer_page";
|
||||
|
||||
/**
|
||||
* Additional extra of Settings#ACTION_SETTINGS_LARGE_SCREEN_DEEP_LINK.
|
||||
@@ -301,12 +303,12 @@ public class SettingsActivity extends SettingsBaseActivity
|
||||
launchSettingFragment(initialFragmentName, intent);
|
||||
}
|
||||
|
||||
final boolean isInSetupWizard = WizardManagerHelper.isAnySetupWizard(getIntent());
|
||||
final boolean isActionBarButtonEnabled = isActionBarButtonEnabled(intent);
|
||||
|
||||
final ActionBar actionBar = getActionBar();
|
||||
if (actionBar != null) {
|
||||
actionBar.setDisplayHomeAsUpEnabled(!isInSetupWizard);
|
||||
actionBar.setHomeButtonEnabled(!isInSetupWizard);
|
||||
actionBar.setDisplayHomeAsUpEnabled(isActionBarButtonEnabled);
|
||||
actionBar.setHomeButtonEnabled(isActionBarButtonEnabled);
|
||||
actionBar.setDisplayShowTitleEnabled(true);
|
||||
}
|
||||
mMainSwitch = findViewById(R.id.switch_bar);
|
||||
@@ -366,6 +368,18 @@ public class SettingsActivity extends SettingsBaseActivity
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isActionBarButtonEnabled(Intent intent) {
|
||||
if (WizardManagerHelper.isAnySetupWizard(intent)) {
|
||||
return false;
|
||||
}
|
||||
final boolean isSecondaryLayerPage =
|
||||
intent.getBooleanExtra(EXTRA_IS_SECONDARY_LAYER_PAGE, false);
|
||||
|
||||
// TODO: move Settings's ActivityEmbeddingUtils to SettingsLib.
|
||||
return !com.android.settingslib.activityembedding.ActivityEmbeddingUtils
|
||||
.shouldHideBackButton(this, isSecondaryLayerPage);
|
||||
}
|
||||
|
||||
private boolean isSubSettings(Intent intent) {
|
||||
return this instanceof SubSettings ||
|
||||
intent.getBooleanExtra(EXTRA_SHOW_FRAGMENT_AS_SUBSETTING, false);
|
||||
|
||||
Reference in New Issue
Block a user