blob: 2c31a4d31f212476fe459874dfeb3212bea5c8c8 [file] [log] [blame]
# Copyright 2025 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//components/signin/features.gni")
source_set("profiles") {
sources = [ "profile_error_dialog.h" ]
public_deps = []
if (!is_android) {
sources += [
"profile_colors_util.h",
"profile_view_utils.h",
]
public_deps += [
"//base",
"//chrome/browser/profiles:profile_util",
"//skia",
]
}
if (is_win || is_mac || is_linux) {
sources += [
"profile_customization_bubble_sync_controller.h",
"profile_customization_synced_theme_waiter.h",
"profile_customization_util.h",
"profile_picker.h",
]
public_deps += [
"//chrome/browser/themes",
"//components/signin/public/identity_manager",
"//components/sync/service",
"//url",
]
if (enable_dice_support) {
sources += [
"batch_upload_ui_delegate.h",
# TODO(crbug.com/430804948): signin_intercept_first_run_experience_dialog.h
# isn't listed here at the moment, and added to "impl" target instead, because it
# causes the following circular dependency:
# ERROR Dependency cycle:
# //chrome/browser/extensions:extensions ->
# //chrome/browser/ui/views/side_panel:side_panel ->
# //chrome/browser/ui/views/toolbar:toolbar ->
# //chrome/browser/ui/profiles:profiles ->
# //chrome/browser/ui/signin:signin ->
# //chrome/browser/ui/webui/signin:signin ->
# //chrome/browser/ui/webui:webui ->
# //chrome/browser/extensions:extensions
]
public_deps += [ "//chrome/browser/profiles/batch_upload" ]
}
}
}
source_set("impl") {
sources = [ "profile_error_dialog.cc" ]
deps = [
":profiles",
"//chrome/browser/feedback",
]
public_deps = []
if (!is_android) {
sources += [
"profile_colors_util.cc",
"profile_view_utils.cc",
]
deps += [
"//chrome/app:command_ids",
"//chrome/browser:browser_process",
"//chrome/browser/new_tab_page/chrome_colors:generate_chrome_colors_info",
"//chrome/browser/prefs",
"//chrome/browser/signin",
"//chrome/browser/sync",
"//chrome/browser/themes",
"//chrome/browser/ui:browser_navigator_params_headers",
"//chrome/browser/ui:layout_constants",
"//chrome/browser/ui/color:color_headers",
"//chrome/browser/ui/toolbar",
"//chrome/common/themes:autogenerated_theme_util",
"//components/user_prefs",
]
}
if (is_win || is_mac || is_linux) {
sources += [
"profile_customization_synced_theme_waiter.cc",
"profile_customization_util.cc",
"profile_picker.cc",
]
deps += [
"//chrome/browser/ui:ui_features",
"//chrome/browser/ui/startup",
]
if (enable_dice_support) {
sources += [
"batch_upload_ui_delegate.cc",
"signin_intercept_first_run_experience_dialog.cc",
"signin_intercept_first_run_experience_dialog.h",
]
deps += [
"//chrome/browser/ui/webui/signin",
"//chrome/browser/ui/webui/signin:login",
# TODO(crbug.com/430804948): This dependency is here because of
# signin_intercept_first_run_experience_dialog.h listed above - see comment in
# :profiles above.
"//chrome/browser/ui/signin",
"//chrome/browser/ui/webui/signin:profile",
]
}
}
public_deps = [ "//chrome/browser:browser_public_dependencies" ]
}
source_set("test_support") {
sources = []
public_deps = []
if (!is_android) {
sources += [ "profile_ui_test_utils.h" ]
public_deps += [
"//base",
"//url",
]
if (!is_chromeos) {
public_deps += [ "//chrome/browser/ui/webui/signin:profile" ]
}
}
}
source_set("unit_tests") {
testonly = true
sources = []
deps = []
if (!is_android) {
sources += [ "profile_view_utils_unittest.cc" ]
deps = [
":profiles",
"//chrome/browser/prefs",
"//chrome/test:test_support",
"//components/account_id",
"//components/policy/core/common:common_constants",
"//content/test:test_support",
"//testing/gtest",
]
if (!is_chromeos) {
sources += [
"profile_colors_util_unittest.cc",
"profile_customization_synced_theme_waiter_unittest.cc",
]
deps += [ "//ui/native_theme:test_support" ]
}
}
if (is_win || is_mac || is_linux) {
sources += [
"profile_customization_util_unittest.cc",
"profile_picker_unittest.cc",
]
deps += [
"//chrome/browser/ui:ui_features",
"//chrome/browser/ui/startup",
]
}
}
source_set("browser_tests") {
testonly = true
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
sources = []
deps = []
if (!is_android) {
sources += [ "profile_error_browsertest.cc" ]
deps += [
"//base",
"//base/test:test_support",
"//chrome/browser/ui/tabs:tab_strip",
"//chrome/common:constants",
"//chrome/common:non_code_constants",
"//chrome/test:test_support",
"//chrome/test:test_support_ui",
"//content/test:test_support",
]
if (enable_dice_support) {
sources +=
[ "signin_intercept_first_run_experience_dialog_browsertest.cc" ]
deps += [
# TODO(crbug.com/430804948): Not depend on it when `signin_intercept_first_run_experience_dialog.h`
# gets built off of :profiles.
":impl",
"//chrome/browser/sync",
"//chrome/browser/ui/browser_window",
"//chrome/browser/ui/signin",
"//chrome/browser/ui/webui/signin",
"//chrome/browser/ui/webui/signin:login",
]
}
}
}