Skip to content

Commit

Permalink
[Oobe WebUI] Start deprecation of set_user_acted_method_path
Browse files Browse the repository at this point in the history
Add external_api_prefix into the OobeScreenId which would be used to
construct javascript functions and callback names.

Bug: 1312879, 1310195, 1309022, 1298392, 1312880
Change-Id: I35e1ea5949c19a59176353efdf985494780afbc8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3568223
Reviewed-by: Danila Kuzmin <dkuzmin@google.com>
Commit-Queue: Roman Sorokin <rsorokin@chromium.org>
Auto-Submit: Roman Sorokin <rsorokin@chromium.org>
Cr-Commit-Position: refs/heads/main@{#988458}
  • Loading branch information
Roman Sorokin authored and Chromium LUCI CQ committed Apr 4, 2022
1 parent 1c357ea commit cebcb66
Show file tree
Hide file tree
Showing 49 changed files with 85 additions and 52 deletions.
8 changes: 7 additions & 1 deletion chrome/browser/ash/login/oobe_screen.cc
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,13 @@ namespace ash {

OobeScreenId::OobeScreenId(const std::string& name) : name(name) {}

OobeScreenId::OobeScreenId(const StaticOobeScreenId& id) : name(id.name) {}
OobeScreenId::OobeScreenId(const StaticOobeScreenId& id)
: name(id.name) {
if (id.external_api_prefix)
external_api_prefix = id.external_api_prefix;
// TODO(https://crbug.com/1312879): Uncomment when the bug is fixed.
// DCHECK(!external_api_prefix.empty());
}

bool OobeScreenId::operator==(const OobeScreenId& rhs) const {
return name == rhs.name;
Expand Down
4 changes: 3 additions & 1 deletion chrome/browser/ash/login/oobe_screen.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,14 @@ struct StaticOobeScreenId;
// Identifiers an OOBE screen.
struct OobeScreenId {
// Create an identifier from a string.
// TODO(https://crbug.com/1312880): Remove this.
explicit OobeScreenId(const std::string& id);
// Create an identifier from a statically created identifier. This is implicit
// to make StaticOobeScreenId act more like OobeScreenId.
OobeScreenId(const StaticOobeScreenId& id);

// Name of the screen.
std::string name;
std::string external_api_prefix;

bool operator==(const OobeScreenId& rhs) const;
bool operator!=(const OobeScreenId& rhs) const;
Expand All @@ -47,6 +48,7 @@ struct OobeScreenId {
// the data in the binary instead of std::string.
struct StaticOobeScreenId {
const char* name;
const char* external_api_prefix = nullptr;

OobeScreenId AsId() const;
};
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ constexpr StaticOobeScreenId ActiveDirectoryLoginView::kScreenId;

ActiveDirectoryLoginScreenHandler::ActiveDirectoryLoginScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.ActiveDirectoryLoginScreen.userActed");
set_user_acted_method_path_deprecated(
"login.ActiveDirectoryLoginScreen.userActed");
}

ActiveDirectoryLoginScreenHandler::~ActiveDirectoryLoginScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr StaticOobeScreenId ActiveDirectoryPasswordChangeView::kScreenId;
ActiveDirectoryPasswordChangeScreenHandler::
ActiveDirectoryPasswordChangeScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path(
set_user_acted_method_path_deprecated(
"login.ActiveDirectoryPasswordChangeScreen.userActed");
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ constexpr StaticOobeScreenId AppDownloadingScreenView::kScreenId;

AppDownloadingScreenHandler::AppDownloadingScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.AppDownloadingScreen.userActed");
set_user_acted_method_path_deprecated("login.AppDownloadingScreen.userActed");
}

AppDownloadingScreenHandler::~AppDownloadingScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ ArcTermsOfServiceScreenHandler::ArcTermsOfServiceScreenHandler()
: BaseScreenHandler(kScreenId),
is_child_account_(
user_manager::UserManager::Get()->IsLoggedInAsChildUser()) {
set_user_acted_method_path("login.ArcTermsOfServiceScreen.userActed");
set_user_acted_method_path_deprecated(
"login.ArcTermsOfServiceScreen.userActed");
}

ArcTermsOfServiceScreenHandler::~ArcTermsOfServiceScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,8 @@ constexpr StaticOobeScreenId AssistantOptInFlowScreenView::kScreenId;

AssistantOptInFlowScreenHandler::AssistantOptInFlowScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.AssistantOptInFlowScreen.userActed");
set_user_acted_method_path_deprecated(
"login.AssistantOptInFlowScreen.userActed");
}

AssistantOptInFlowScreenHandler::~AssistantOptInFlowScreenHandler() {
Expand Down
5 changes: 5 additions & 0 deletions chrome/browser/ui/webui/chromeos/login/base_screen_handler.cc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

#include "chrome/browser/ui/webui/chromeos/login/base_screen_handler.h"

#include "base/strings/strcat.h"
#include "chrome/browser/ash/login/oobe_screen.h"
#include "chrome/browser/ash/login/screens/base_screen.h"
#include "chrome/browser/ui/webui/chromeos/login/base_webui_handler.h"
Expand All @@ -14,6 +15,10 @@ namespace chromeos {
BaseScreenHandler::BaseScreenHandler(OobeScreenId oobe_screen)
: oobe_screen_(oobe_screen) {
DCHECK_NE(oobe_screen_.name, OobeScreen::SCREEN_UNKNOWN.name);
if (!oobe_screen_.external_api_prefix.empty()) {
user_acted_method_path_ = base::StrCat(
{"login.", oobe_screen_.external_api_prefix, ".userActed"});
}
}

BaseScreenHandler::~BaseScreenHandler() = default;
Expand Down
4 changes: 3 additions & 1 deletion chrome/browser/ui/webui/chromeos/login/base_screen_handler.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,9 @@ class BaseScreenHandler : public BaseWebUIHandler {
//
// If this is not called then userActed-style callbacks will not be available
// for the screen.
void set_user_acted_method_path(const std::string& user_acted_method_path) {
// DEPRECATED: Use 'StaticOobeScreenId::external_api_prefix' instead.
void set_user_acted_method_path_deprecated(
const std::string& user_acted_method_path) {
user_acted_method_path_ = user_acted_method_path;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@ constexpr StaticOobeScreenId ConsolidatedConsentScreenView::kScreenId;

ConsolidatedConsentScreenHandler::ConsolidatedConsentScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.ConsolidatedConsentScreen.userActed");
set_user_acted_method_path_deprecated(
"login.ConsolidatedConsentScreen.userActed");
}

ConsolidatedConsentScreenHandler::~ConsolidatedConsentScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ DemoPreferencesScreenView::~DemoPreferencesScreenView() = default;

DemoPreferencesScreenHandler::DemoPreferencesScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.DemoPreferencesScreen.userActed");
set_user_acted_method_path_deprecated(
"login.DemoPreferencesScreen.userActed");
}

DemoPreferencesScreenHandler::~DemoPreferencesScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ DemoSetupScreenView::~DemoSetupScreenView() = default;

DemoSetupScreenHandler::DemoSetupScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.DemoSetupScreen.userActed");
set_user_acted_method_path_deprecated("login.DemoSetupScreen.userActed");
}

DemoSetupScreenHandler::~DemoSetupScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,8 @@

namespace chromeos {

constexpr StaticOobeScreenId EnableAdbSideloadingScreenView::kScreenId;

EnableAdbSideloadingScreenHandler::EnableAdbSideloadingScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.EnableAdbSideloadingScreen.userActed");
}
: BaseScreenHandler(kScreenId) {}

EnableAdbSideloadingScreenHandler::~EnableAdbSideloadingScreenHandler() =
default;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ namespace chromeos {
class EnableAdbSideloadingScreenView
: public base::SupportsWeakPtr<EnableAdbSideloadingScreenView> {
public:
constexpr static StaticOobeScreenId kScreenId{"adb-sideloading"};
inline constexpr static StaticOobeScreenId kScreenId{
"adb-sideloading", "EnableAdbSideloadingScreen"};

// The constants need to be synced with oobe_adb_sideloading_screen.js.
enum class UIState {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ constexpr StaticOobeScreenId EnableDebuggingScreenView::kScreenId;

EnableDebuggingScreenHandler::EnableDebuggingScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.EnableDebuggingScreen.userActed");
set_user_acted_method_path_deprecated(
"login.EnableDebuggingScreen.userActed");
}

EnableDebuggingScreenHandler::~EnableDebuggingScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ constexpr StaticOobeScreenId EncryptionMigrationScreenView::kScreenId;

EncryptionMigrationScreenHandler::EncryptionMigrationScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.EncryptionMigrationScreen.userActed");
set_user_acted_method_path_deprecated(
"login.EncryptionMigrationScreen.userActed");
}

EncryptionMigrationScreenHandler::~EncryptionMigrationScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -196,7 +196,8 @@ EnrollmentScreenHandler::EnrollmentScreenHandler(
DCHECK(network_state_informer_.get());
DCHECK(error_screen_);
network_state_informer_->AddObserver(this);
set_user_acted_method_path("login.OAuthEnrollmentScreen.userActed");
set_user_acted_method_path_deprecated(
"login.OAuthEnrollmentScreen.userActed");
}

EnrollmentScreenHandler::~EnrollmentScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ namespace chromeos {
constexpr StaticOobeScreenId ErrorScreenView::kScreenId;

ErrorScreenHandler::ErrorScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.ErrorMessageScreen.userActed");
set_user_acted_method_path_deprecated("login.ErrorMessageScreen.userActed");
}

ErrorScreenHandler::~ErrorScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ namespace chromeos {
constexpr StaticOobeScreenId EulaView::kScreenId;

EulaScreenHandler::EulaScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.EulaScreen.userActed");
set_user_acted_method_path_deprecated("login.EulaScreen.userActed");
}

EulaScreenHandler::~EulaScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ constexpr StaticOobeScreenId FamilyLinkNoticeView::kScreenId;

FamilyLinkNoticeScreenHandler::FamilyLinkNoticeScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.FamilyLinkNoticeScreen.userActed");
set_user_acted_method_path_deprecated(
"login.FamilyLinkNoticeScreen.userActed");
}

FamilyLinkNoticeScreenHandler::~FamilyLinkNoticeScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ constexpr StaticOobeScreenId FingerprintSetupScreenView::kScreenId;

FingerprintSetupScreenHandler::FingerprintSetupScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.FingerprintSetupScreen.userActed");
set_user_acted_method_path_deprecated(
"login.FingerprintSetupScreen.userActed");
}

FingerprintSetupScreenHandler::~FingerprintSetupScreenHandler() = default;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,8 @@ constexpr StaticOobeScreenId GaiaPasswordChangedView::kScreenId;

GaiaPasswordChangedScreenHandler::GaiaPasswordChangedScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.GaiaPasswordChangedScreen.userActed");
set_user_acted_method_path_deprecated(
"login.GaiaPasswordChangedScreen.userActed");
}

GaiaPasswordChangedScreenHandler::~GaiaPasswordChangedScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ GaiaScreenHandler::GaiaScreenHandler(
network_state_informer_(network_state_informer),
core_oobe_view_(core_oobe_view) {
DCHECK(network_state_informer_.get());
set_user_acted_method_path("login.GaiaSigninScreen.userActed");
set_user_acted_method_path_deprecated("login.GaiaSigninScreen.userActed");
}

GaiaScreenHandler::~GaiaScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ constexpr StaticOobeScreenId GestureNavigationScreenView::kScreenId;

GestureNavigationScreenHandler::GestureNavigationScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.GestureNavigationScreen.userActed");
set_user_acted_method_path_deprecated(
"login.GestureNavigationScreen.userActed");
}

GestureNavigationScreenHandler::~GestureNavigationScreenHandler() = default;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ namespace chromeos {
constexpr StaticOobeScreenId GuestTosScreenView::kScreenId;

GuestTosScreenHandler::GuestTosScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.GuestTosScreen.userActed");
set_user_acted_method_path_deprecated("login.GuestTosScreen.userActed");
}

GuestTosScreenHandler::~GuestTosScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ constexpr StaticOobeScreenId HWDataCollectionView::kScreenId;

HWDataCollectionScreenHandler::HWDataCollectionScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.HWDataCollectionScreen.userActed");
set_user_acted_method_path_deprecated(
"login.HWDataCollectionScreen.userActed");
}

HWDataCollectionScreenHandler::~HWDataCollectionScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ constexpr StaticOobeScreenId HIDDetectionView::kScreenId;

HIDDetectionScreenHandler::HIDDetectionScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.HIDDetectionScreen.userActed");
set_user_acted_method_path_deprecated("login.HIDDetectionScreen.userActed");
}

HIDDetectionScreenHandler::~HIDDetectionScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ constexpr StaticOobeScreenId KioskEnableScreenView::kScreenId;

KioskEnableScreenHandler::KioskEnableScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.KioskEnableScreen.userActed");
set_user_acted_method_path_deprecated("login.KioskEnableScreen.userActed");
}

KioskEnableScreenHandler::~KioskEnableScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ constexpr StaticOobeScreenId LacrosDataMigrationScreenView::kScreenId;

LacrosDataMigrationScreenHandler::LacrosDataMigrationScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.LacrosDataMigrationScreen.userActed");
set_user_acted_method_path_deprecated(
"login.LacrosDataMigrationScreen.userActed");
}

LacrosDataMigrationScreenHandler::~LacrosDataMigrationScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ constexpr StaticOobeScreenId MultiDeviceSetupScreenView::kScreenId;

MultiDeviceSetupScreenHandler::MultiDeviceSetupScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.MultiDeviceSetupScreen.userActed");
set_user_acted_method_path_deprecated(
"login.MultiDeviceSetupScreen.userActed");
}

MultiDeviceSetupScreenHandler::~MultiDeviceSetupScreenHandler() = default;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ namespace chromeos {
constexpr StaticOobeScreenId NetworkScreenView::kScreenId;

NetworkScreenHandler::NetworkScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.NetworkScreen.userActed");
set_user_acted_method_path_deprecated("login.NetworkScreen.userActed");
}

NetworkScreenHandler::~NetworkScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ constexpr StaticOobeScreenId OfflineLoginView::kScreenId;

OfflineLoginScreenHandler::OfflineLoginScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.OfflineLoginScreen.userActed");
set_user_acted_method_path_deprecated("login.OfflineLoginScreen.userActed");
}

OfflineLoginScreenHandler::~OfflineLoginScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ constexpr StaticOobeScreenId OsInstallScreenView::kScreenId;

OsInstallScreenHandler::OsInstallScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.OsInstallScreen.userActed");
set_user_acted_method_path_deprecated("login.OsInstallScreen.userActed");
}

OsInstallScreenHandler::~OsInstallScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ namespace chromeos {
constexpr StaticOobeScreenId OsTrialScreenView::kScreenId;

OsTrialScreenHandler::OsTrialScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.OsTrialScreen.userActed");
set_user_acted_method_path_deprecated("login.OsTrialScreen.userActed");
}

OsTrialScreenHandler::~OsTrialScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,8 @@ constexpr StaticOobeScreenId PackagedLicenseView::kScreenId;

PackagedLicenseScreenHandler::PackagedLicenseScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.PackagedLicenseScreen.userActed");
set_user_acted_method_path_deprecated(
"login.PackagedLicenseScreen.userActed");
}

PackagedLicenseScreenHandler::~PackagedLicenseScreenHandler() {}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ constexpr StaticOobeScreenId ParentalHandoffScreenView::kScreenId;

ParentalHandoffScreenHandler::ParentalHandoffScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.ParentalHandoffScreen.userActed");
set_user_acted_method_path_deprecated(
"login.ParentalHandoffScreen.userActed");
}

ParentalHandoffScreenHandler::~ParentalHandoffScreenHandler() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ namespace chromeos {
constexpr StaticOobeScreenId PinSetupScreenView::kScreenId;

PinSetupScreenHandler::PinSetupScreenHandler() : BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.PinSetupScreen.userActed");
set_user_acted_method_path_deprecated("login.PinSetupScreen.userActed");
}

PinSetupScreenHandler::~PinSetupScreenHandler() {}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ constexpr StaticOobeScreenId QuickStartView::kScreenId;

QuickStartScreenHandler::QuickStartScreenHandler()
: BaseScreenHandler(kScreenId) {
set_user_acted_method_path("login.QuickStartScreen.userActed");
set_user_acted_method_path_deprecated("login.QuickStartScreen.userActed");
}

QuickStartScreenHandler::~QuickStartScreenHandler() {
Expand Down

0 comments on commit cebcb66

Please sign in to comment.