chromium/chrome/browser/ui/views/tabs/tab_group_style.cc

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

#include "chrome/browser/ui/views/tabs/tab_group_style.h"

#include "base/feature_list.h"
#include "chrome/browser/ui/layout_constants.h"
#include "chrome/browser/ui/tabs/tab_style.h"
#include "chrome/browser/ui/ui_features.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_underline.h"
#include "chrome/browser/ui/views/tabs/tab_group_views.h"
#include "ui/gfx/geometry/insets.h"
#include "ui/gfx/geometry/rect.h"
#include "ui/gfx/geometry/rect_conversions.h"
#include "ui/gfx/geometry/skia_conversions.h"
#include "ui/views/background.h"
#include "ui/views/controls/label.h"
#include "ui/views/view.h"
#include "ui/views/view_utils.h"

namespace {

constexpr int kHeaderChipVerticalInset =;
constexpr int kTitleAdjustmentForNonEmptyHeader =;
// The width of the sync icon when a tab group is saved.
constexpr int kSyncIconWidth =;
// The size of the empty chip.
constexpr int kEmptyChipSize =;
constexpr int kSyncIconLeftMargin =;
constexpr int kCornerRadius =;
constexpr int kTabGroupOverlapAdjustment =;

}  // namespace

// static
int TabGroupStyle::GetTabGroupOverlapAdjustment() {}

TabGroupStyle::TabGroupStyle(const TabGroupViews& tab_group_views)
    :{}

TabGroupStyle::~TabGroupStyle() = default;

bool TabGroupStyle::TabGroupUnderlineShouldBeHidden() const {}

bool TabGroupStyle::TabGroupUnderlineShouldBeHidden(
    const views::View* const leading_view,
    const views::View* const trailing_view) const {}

// The path is a rounded rect.
SkPath TabGroupStyle::GetUnderlinePath(const gfx::Rect local_bounds) const {}

gfx::Rect TabGroupStyle::GetEmptyTitleChipBounds(
    const TabGroupHeader* const header) const {}

gfx::Point TabGroupStyle::GetTitleChipOffset(
    std::optional<int> text_height) const {}

std::unique_ptr<views::Background> TabGroupStyle::GetEmptyTitleChipBackground(
    const SkColor color) const {}

gfx::Insets TabGroupStyle::GetInsetsForHeaderChip(
    bool should_show_sync_icon) const {}

int TabGroupStyle::GetHighlightPathGeneratorCornerRadius(
    const views::View* const title) const {}

int TabGroupStyle::GetTitleAdjustmentToTabGroupHeaderDesiredWidth(
    const std::u16string title) const {}

float TabGroupStyle::GetEmptyChipSize() const {}

float TabGroupStyle::GetSyncIconWidth() const {}

int TabGroupStyle::GetChipCornerRadius() const {}

int TabGroupStyle::GetTabGroupViewOverlap() const {}