#include "chrome/browser/ui/views/tabs/tab_organization_button.h"
#include "chrome/app/vector_icons/vector_icons.h"
#include "chrome/browser/ui/browser_element_identifiers.h"
#include "chrome/browser/ui/color/chrome_color_id.h"
#include "chrome/browser/ui/tabs/organization/tab_organization_service.h"
#include "chrome/browser/ui/views/tabs/tab_strip_controller.h"
#include "chrome/grit/generated_resources.h"
#include "components/vector_icons/vector_icons.h"
#include "ui/base/l10n/l10n_util.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/compositor/layer.h"
#include "ui/views/accessibility/view_accessibility.h"
#include "ui/views/animation/ink_drop.h"
#include "ui/views/controls/highlight_path_generator.h"
#include "ui/views/layout/box_layout.h"
#include "ui/views/view_class_properties.h"
namespace {
constexpr int kTabOrganizeCornerRadius = …;
constexpr int kTabOrganizeFlatCornerRadius = …;
constexpr int kTabOrganizeLabelMargin = …;
constexpr int kTabOrganizeCloseButtonMargin = …;
constexpr int kTabOrganizeCloseButtonSize = …;
}
TabOrganizationButton::TabOrganizationButton(
TabStripController* tab_strip_controller,
PressedCallback pressed_callback,
PressedCallback close_pressed_callback,
const std::u16string& label_text,
const std::u16string& tooltip_text,
const std::u16string& accessibility_name,
const ui::ElementIdentifier& element_identifier,
Edge flat_edge)
: … { … }
TabOrganizationButton::~TabOrganizationButton() = default;
void TabOrganizationButton::SetOpacity(float factor) { … }
void TabOrganizationButton::SetWidthFactor(float factor) { … }
gfx::Size TabOrganizationButton::CalculatePreferredSize(
const views::SizeBounds& available_size) const { … }
int TabOrganizationButton::GetCornerRadius() const { … }
int TabOrganizationButton::GetFlatCornerRadius() const { … }
void TabOrganizationButton::SetCloseButton(PressedCallback pressed_callback) { … }
BEGIN_METADATA(…)