# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//extensions/buildflags/buildflags.gni")
assert(is_win || is_mac || is_linux || is_chromeos)
source_set("themes") {
public = [
"browser_theme_pack.h",
"custom_theme_supplier.h",
"theme_helper.h",
"theme_properties.h",
"theme_service.h",
"theme_service_factory.h",
"theme_service_observer.h",
"theme_service_utils.h",
"theme_syncable_service.h",
]
sources = [
"browser_theme_pack.cc",
"custom_theme_supplier.cc",
"theme_helper.cc",
"theme_properties.cc",
"theme_service.cc",
"theme_service_factory.cc",
"theme_service_utils.cc",
"theme_syncable_service.cc",
]
deps = [
"//build:chromeos_buildflags",
"//chrome/app/theme:theme_resources",
"//chrome/browser/new_tab_page/chrome_colors",
"//chrome/browser/search/background:constants",
"//chrome/browser/ui/color:color_headers",
"//chrome/browser/ui/frame",
"//chrome/common",
"//components/crx_file",
"//components/infobars/content",
"//components/keyed_service/content",
"//components/pref_registry",
"//components/resources:components_scaled_resources",
"//components/sync/protocol",
"//content/public/browser",
"//third_party/abseil-cpp:absl",
"//ui/color",
"//ui/gfx",
"//ui/native_theme",
]
public_deps = [
"//base",
"//chrome/browser/profiles:profile",
"//chrome/common/themes:autogenerated_theme_util",
"//components/keyed_service/core",
"//components/prefs",
"//components/sync/model",
"//skia",
"//ui/base",
"//ui/base/mojom",
"//ui/color:color_provider_key",
"//ui/gfx:color_utils",
]
if (enable_extensions) {
public_deps += [
"//extensions/buildflags",
"//extensions/common",
]
deps += [ "//extensions/browser" ]
}
if (is_win || is_mac || is_linux) {
public += [ "theme_color_policy_handler.h" ]
sources += [ "theme_color_policy_handler.cc" ]
deps += [
"//components/policy:generated",
"//components/policy:policy_code_generate",
"//components/policy/core/browser",
"//third_party/re2",
]
}
if (is_win) {
sources += [
"theme_helper_win.cc",
"theme_helper_win.h",
]
deps += [ "//chrome/browser/win:mica_titlebar" ]
}
if (is_linux) {
public += [ "theme_service_aura_linux.h" ]
sources += [ "theme_service_aura_linux.cc" ]
deps += [
"//ui/linux:linux_ui",
"//ui/linux:linux_ui_factory",
"//ui/ozone",
]
}
}