#include "ui/views/controls/scrollbar/scroll_bar_views.h"
#include <algorithm>
#include <memory>
#include <utility>
#include "base/check.h"
#include "base/memory/raw_ptr.h"
#include "base/notreached.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
#include "ui/base/metadata/metadata_impl_macros.h"
#include "ui/events/keycodes/keyboard_codes.h"
#include "ui/gfx/canvas.h"
#include "ui/views/controls/button/button.h"
#include "ui/views/controls/focusable_border.h"
#include "ui/views/controls/scrollbar/base_scroll_bar_thumb.h"
#include "ui/views/controls/scrollbar/scroll_bar.h"
#include "ui/views/controls/scrollbar/scroll_bar_button.h"
#include "ui/views/layout/flex_layout.h"
#include "ui/views/view_class_properties.h"
namespace views {
namespace {
class ScrollBarThumb : public BaseScrollBarThumb { … };
ScrollBarThumb::ScrollBarThumb(ScrollBar* scroll_bar)
: … { … }
ScrollBarThumb::~ScrollBarThumb() = default;
gfx::Size ScrollBarThumb::CalculatePreferredSize(
const SizeBounds& ) const { … }
void ScrollBarThumb::OnPaint(gfx::Canvas* canvas) { … }
void ScrollBarThumb::OnThemeChanged() { … }
ui::NativeTheme::ExtraParams ScrollBarThumb::GetNativeThemeParams() const { … }
ui::NativeTheme::Part ScrollBarThumb::GetNativeThemePart() const { … }
ui::NativeTheme::State ScrollBarThumb::GetNativeThemeState() const { … }
BEGIN_METADATA(…)
}
ScrollBarViews::ScrollBarViews(Orientation orientation)
: … { … }
ScrollBarViews::~ScrollBarViews() = default;
int ScrollBarViews::GetVerticalScrollBarWidth(const ui::NativeTheme* theme) { … }
void ScrollBarViews::OnPaint(gfx::Canvas* canvas) { … }
int ScrollBarViews::GetThickness() const { … }
gfx::Rect ScrollBarViews::GetTrackBounds() const { … }
BEGIN_METADATA(…)
}