#include "chrome/browser/ui/views/tabs/tab_group_underline.h"
#include <memory>
#include <utility>
#include "chrome/browser/ui/layout_constants.h"
#include "chrome/browser/ui/tabs/tab_style.h"
#include "chrome/browser/ui/views/tabs/tab.h"
#include "chrome/browser/ui/views/tabs/tab_group_header.h"
#include "chrome/browser/ui/views/tabs/tab_group_style.h"
#include "chrome/browser/ui/views/tabs/tab_group_views.h"
#include "components/tab_groups/tab_group_id.h"
#include "components/tab_groups/tab_group_visual_data.h"
#include "third_party/skia/include/core/SkColor.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/gfx/canvas.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/geometry/rect.h"
#include "ui/views/background.h"
#include "ui/views/view.h"
#include "ui/views/view_utils.h"
constexpr int TabGroupUnderline::kStrokeThickness;
TabGroupUnderline::TabGroupUnderline(TabGroupViews* tab_group_views,
const tab_groups::TabGroupId& group,
const TabGroupStyle& style)
: … { … }
void TabGroupUnderline::OnPaint(gfx::Canvas* canvas) { … }
void TabGroupUnderline::UpdateBounds(const views::View* const leading_view,
const views::View* const trailing_view) { … }
gfx::Rect TabGroupUnderline::CalculateTabGroupUnderlineBounds(
const views::View* const underline_view,
const views::View* const leading_view,
const views::View* const trailing_view) const { … }
gfx::Insets TabGroupUnderline::GetInsetsForUnderline(
const views::View* const sibling_view) const { … }
void TabGroupUnderline::MaybeSetVisible(const bool visible) { … }
int TabGroupUnderline::GetStrokeInset() { … }
BEGIN_METADATA(…)