#include "chrome/browser/ui/views/tabs/tab_strip_control_button.h"
#include <utility>
#include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h"
#include "chrome/browser/ui/views/tabs/tab_strip.h"
#include "chrome/browser/ui/views/tabs/tab_strip_controller.h"
#include "chrome/browser/ui/views/toolbar/toolbar_ink_drop_util.h"
#include "third_party/skia/include/core/SkPath.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/gfx/geometry/rounded_corners_f.h"
#include "ui/gfx/geometry/skia_conversions.h"
#include "ui/gfx/vector_icon_types.h"
#include "ui/views/animation/flood_fill_ink_drop_ripple.h"
#include "ui/views/animation/ink_drop.h"
#include "ui/views/animation/ink_drop_highlight.h"
#include "ui/views/animation/ink_drop_state.h"
#include "ui/views/controls/highlight_path_generator.h"
make_unique;
namespace {
class ControlButtonHighlightPathGenerator
: public views::HighlightPathGenerator { … };
}
const int TabStripControlButton::kIconSize = …;
const gfx::Size TabStripControlButton::kButtonSize{ … };
const gfx::VectorIcon kEmptyIcon;
TabStripControlButton::TabStripControlButton(
TabStripController* tab_strip_controller,
PressedCallback callback,
const gfx::VectorIcon& icon,
Edge flat_edge)
: … { … }
TabStripControlButton::TabStripControlButton(
TabStripController* tab_strip_controller,
PressedCallback callback,
const std::u16string& text,
Edge flat_edge)
: … { … }
TabStripControlButton::TabStripControlButton(
TabStripController* tab_strip_controller,
PressedCallback callback,
const gfx::VectorIcon& icon,
const std::u16string& text,
Edge flat_edge)
: … { … }
void TabStripControlButton::SetForegroundFrameActiveColorId(
ui::ColorId new_color_id) { … }
void TabStripControlButton::SetForegroundFrameInactiveColorId(
ui::ColorId new_color_id) { … }
void TabStripControlButton::SetBackgroundFrameActiveColorId(
ui::ColorId new_color_id) { … }
void TabStripControlButton::SetBackgroundFrameInactiveColorId(
ui::ColorId new_color_id) { … }
void TabStripControlButton::SetVectorIcon(const gfx::VectorIcon& icon) { … }
ui::ColorId TabStripControlButton::GetBackgroundColor() { … }
ui::ColorId TabStripControlButton::GetForegroundColor() { … }
void TabStripControlButton::UpdateIcon() { … }
void TabStripControlButton::UpdateInkDrop() { … }
void TabStripControlButton::UpdateColors() { … }
void TabStripControlButton::UpdateBackground() { … }
int TabStripControlButton::GetCornerRadius() const { … }
int TabStripControlButton::GetFlatCornerRadius() const { … }
float TabStripControlButton::GetScaledCornerRadius(float initial_radius,
Edge edge) const { … }
void TabStripControlButton::AddedToWidget() { … }
void TabStripControlButton::RemovedFromWidget() { … }
void TabStripControlButton::OnThemeChanged() { … }
bool TabStripControlButton::GetHitTestMask(SkPath* mask) const { … }
gfx::Size TabStripControlButton::CalculatePreferredSize(
const views::SizeBounds& available_size) const { … }
void TabStripControlButton::NotifyClick(const ui::Event& event) { … }
void TabStripControlButton::SetFlatEdgeFactor(float factor) { … }
void TabStripControlButton::AnimateToStateForTesting(
views::InkDropState state) { … }
BEGIN_METADATA(…)