blob: 0d72ea71bfa71b9d73133d122565673fdd818694 [file] [log] [blame]
# 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("//chrome/common/features.gni")
assert(is_win || is_mac || is_linux || is_chromeos || is_desktop_android)
# This is the public interface for a browser window. Most features in
# //chrome/browser depend on this interface, and thus to prevent circular
# dependencies this interface should not depend on anything else in //chrome.
source_set("browser_window") {
sources = [
"public/browser_window_interface.h",
"public/browser_window_interface_iterator.h",
]
public_deps = [ "//content/public/browser" ]
deps = [ "//ui/base/unowned_user_data" ]
if (!is_android) {
sources += [
"public/browser_window_features.h",
"public/desktop_browser_window_capabilities.h",
"public/desktop_browser_window_capabilities_delegate.h",
]
public_deps += [
"//base",
"//chrome/common:buildflags",
"//extensions/buildflags",
"//ui/base:types",
]
}
}
source_set("create_browser_window") {
sources = [ "public/create_browser_window.h" ]
public_deps = [
"//chrome/browser/ui/browser_window",
"//ui/base/mojom:ui_base_types",
]
}
if (!is_android) {
source_set("browser_tests") {
testonly = true
sources = [
"internal/create_browser_window_browsertest.cc",
"public/browser_window_interface_iterator_browsertest.cc",
]
defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
deps = [
":browser_window",
":create_browser_window",
"//base",
"//base/test:test_support",
"//chrome/browser/ui",
"//chrome/test:test_support",
"//content/test:test_support",
"//testing/gtest",
]
}
}