# Copyright 2026 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

source_set("shared") {
  sources = [
    "drop_arrow.h",
    "new_tab_button.h",
    "rounded_scroll_bar.h",
    "tab_strip_combo_button.h",
    "tab_strip_flat_edge_button.h",
  ]

  deps = [
    "//chrome/browser/ui/views",
    "//chrome/browser/ui/views/frame",
    "//components/prefs",
    "//ui/base/metadata",
    "//ui/menus",
    "//ui/views",
  ]
}

source_set("impl") {
  sources = [
    "drop_arrow.cc",
    "new_tab_button.cc",
    "rounded_scroll_bar.cc",
    "tab_strip_combo_button.cc",
    "tab_strip_flat_edge_button.cc",
  ]

  deps = [
    ":shared",
    "//base:i18n",
    "//chrome/app:command_ids",
    "//chrome/app:generated_resources_grit",
    "//chrome/app/vector_icons",
    "//chrome/browser:primitives",
    "//chrome/browser/feature_engagement",
    "//chrome/browser/ui:browser_actions",
    "//chrome/browser/ui:layout_constants",
    "//chrome/browser/ui/browser_window",
    "//chrome/browser/ui/color:color_headers",
    "//chrome/browser/ui/tabs",
    "//chrome/browser/ui/tabs/saved_tab_groups",
    "//chrome/browser/ui/toolbar/pinned_toolbar",
    "//chrome/browser/ui/user_education",
    "//chrome/browser/ui/views/bookmarks",
    "//chrome/browser/ui/views/bookmarks/saved_tab_groups",
    "//chrome/browser/ui/views/frame",
    "//chrome/browser/ui/views/tabs:new_tab_button_menu_model",
    "//chrome/browser/ui/views/tabs/organizer",
    "//chrome/browser/ui/views/toolbar",
    "//chrome/browser/ui/webui/tab_search",
    "//components/prefs",
    "//ui/actions",
    "//ui/menus",
    "//ui/views",
  ]
}

source_set("interactive_ui_tests") {
  testonly = true
  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]
  sources = [ "tab_strip_combo_button_interactive_uitest.cc" ]
  deps = [
    ":impl",
    "//base",
    "//chrome/browser/ui",
    "//chrome/browser/ui/views/tabs/organizer",
    "//chrome/browser/ui/views/tabs/shared",
    "//chrome/test:test_support",
    "//chrome/test:test_support_ui",
    "//testing/gmock",
    "//testing/gtest",
    "//ui/views",
  ]
}

source_set("unit_tests") {
  testonly = true
  sources = [
    "new_tab_button_unittest.cc",
    "tab_strip_flat_edge_button_unittest.cc",
  ]
  deps = [
    ":impl",
    ":shared",
    "//base",
    "//chrome/browser/ui",
    "//chrome/browser/ui:browser_actions",
    "//chrome/browser/ui:browser_init_state",
    "//chrome/browser/ui/browser_window/test:test_support",
    "//chrome/browser/ui/fullscreen",
    "//chrome/browser/ui/tabs:tab_strip",
    "//chrome/browser/ui/tabs:test_support",
    "//chrome/browser/ui/window_feature_controller",
    "//chrome/test:test_support",
    "//chrome/test/views",
    "//content/test:test_support",
    "//testing/gtest",
    "//ui/events:test_support",
    "//ui/gfx/geometry",
    "//ui/views",
  ]

  if (is_chromeos) {
    deps += [
      "//chrome/browser/ash/boca/on_task",
      "//chrome/browser/ash/login/users:test_support",
      "//components/account_id",
      "//components/user_manager",
    ]
  }
}
