blob: 0b252567d5b0e9ba281e0a6d3b71c1cd7de1bdab [file] [log] [blame]
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/jumbo.gni")
import("//build/config/ui.gni")
import("//testing/test.gni")
jumbo_component("native_theme") {
sources = [
"common_theme.cc",
"common_theme.h",
"native_theme.cc",
"native_theme.h",
"native_theme_android.cc",
"native_theme_android.h",
"native_theme_base.cc",
"native_theme_base.h",
"native_theme_export.h",
"native_theme_features.cc",
"native_theme_features.h",
"native_theme_mac.h",
"native_theme_mac.mm",
"native_theme_observer.cc",
"native_theme_observer.h",
]
if (use_aura || toolkit_views) {
sources += [
"native_theme_aura.cc",
"native_theme_aura.h",
"native_theme_dark_aura.cc",
"native_theme_dark_aura.h",
"overlay_scrollbar_constants_aura.h",
]
}
defines = [ "NATIVE_THEME_IMPLEMENTATION" ]
public_deps = [
"//skia",
]
deps = [
"//base",
"//base/third_party/dynamic_annotations",
"//cc/paint",
"//ui/base",
"//ui/display",
"//ui/gfx",
"//ui/gfx/geometry",
"//ui/resources",
]
if (is_mac) {
libs = [
"CoreGraphics.framework",
"AppKit.framework",
]
}
}
if (is_win) {
jumbo_component("native_theme_browser") {
defines = [ "NATIVE_THEME_IMPLEMENTATION" ]
# These files cannot work in the renderer on Windows.
sources = [
"native_theme_win.cc",
"native_theme_win.h",
]
deps = [
":native_theme",
"//base",
"//cc/paint",
"//ui/base",
"//ui/display",
"//ui/gfx",
]
}
} else {
jumbo_source_set("native_theme_browser") {
}
}
jumbo_source_set("test_support") {
testonly = true
deps = [
":native_theme",
"//base",
]
sources = [
"test_native_theme.cc",
"test_native_theme.h",
]
}
test("native_theme_unittests") {
sources = []
if (use_aura) {
sources += [ "native_theme_aura_unittest.cc" ]
}
if (is_mac) {
sources += [ "native_theme_mac_unittest.cc" ]
}
deps = [
":native_theme",
"//base/test:run_all_unittests",
"//base/test:test_support",
"//skia",
"//testing/gtest",
"//ui/base",
"//ui/gfx/geometry:geometry",
]
}