Commit b88c440a authored by Felipe Andrade's avatar Felipe Andrade Committed by Chromium LUCI CQ

Update people section according to Kerberos flag

Remove Kerberos settings from people section when
KerberosSettingsSection flag is enabled. Kerberos accounts entry will
be hidden in the UI and the search tags won't be created (inside people
section). Instead, they will be added to the new Kerberos section
(currently under development).

Bug: 983041
Change-Id: I852ddcb4921c7aac4b7088bf0e72dac58411e771
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2565430
Commit-Queue: Felipe Andrade <fsandrade@chromium.org>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Reviewed-by: default avatarMaksim Ivanov <emaxx@chromium.org>
Cr-Commit-Position: refs/heads/master@{#834475}
parent b36ec160
......@@ -137,7 +137,8 @@ cr.define('settings', function() {
autofill: true,
people: {
lockScreen: true,
kerberosAccounts: isKerberosEnabled,
kerberosAccounts:
isKerberosEnabled && !isKerberosSettingsSectionEnabled,
googleAccounts: isAccountManagerEnabled,
manageUsers: true,
},
......
......@@ -723,7 +723,10 @@ PeopleSection::PeopleSection(
FetchAccounts();
}
if (kerberos_credentials_manager_) {
// No Kerberos search tags are registered here if Kerberos settings are in a
// separate section.
if (kerberos_credentials_manager_ &&
!chromeos::features::IsKerberosSettingsSectionEnabled()) {
// Kerberos search tags are added/removed dynamically.
kerberos_credentials_manager_->AddObserver(this);
OnKerberosEnabledStateChanged();
......@@ -761,8 +764,10 @@ PeopleSection::PeopleSection(
}
PeopleSection::~PeopleSection() {
if (kerberos_credentials_manager_)
if (kerberos_credentials_manager_ &&
!chromeos::features::IsKerberosSettingsSectionEnabled()) {
kerberos_credentials_manager_->RemoveObserver(this);
}
if (chromeos::features::IsSplitSettingsSyncEnabled() && sync_service_)
sync_service_->RemoveObserver(this);
......@@ -905,12 +910,16 @@ void PeopleSection::AddHandlers(content::WebUI* web_ui) {
profile()));
}
std::unique_ptr<chromeos::settings::KerberosAccountsHandler>
kerberos_accounts_handler =
KerberosAccountsHandler::CreateIfKerberosEnabled(profile());
if (kerberos_accounts_handler) {
// Note that the UI is enabled only if Kerberos is enabled.
web_ui->AddMessageHandler(std::move(kerberos_accounts_handler));
// No Kerberos handler is created/added here if Kerberos settings are in a
// separate section.
if (!chromeos::features::IsKerberosSettingsSectionEnabled()) {
std::unique_ptr<chromeos::settings::KerberosAccountsHandler>
kerberos_accounts_handler =
KerberosAccountsHandler::CreateIfKerberosEnabled(profile());
if (kerberos_accounts_handler) {
// Note that the UI is enabled only if Kerberos is enabled.
web_ui->AddMessageHandler(std::move(kerberos_accounts_handler));
}
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment