chromium/third_party/blink/renderer/core/scroll/scrollbar_theme.cc

/*
 * Copyright (C) 2011 Apple Inc. All Rights Reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */

#include "third_party/blink/renderer/core/scroll/scrollbar_theme.h"

#include <optional>

#include "build/build_config.h"
#include "cc/input/scrollbar.h"
#include "third_party/blink/public/common/input/web_mouse_event.h"
#include "third_party/blink/renderer/core/scroll/scrollable_area.h"
#include "third_party/blink/renderer/core/scroll/scrollbar.h"
#include "third_party/blink/renderer/core/scroll/scrollbar_theme_overlay_mock.h"
#include "third_party/blink/renderer/platform/graphics/color.h"
#include "third_party/blink/renderer/platform/graphics/graphics_context.h"
#include "third_party/blink/renderer/platform/graphics/graphics_context_state_saver.h"
#include "third_party/blink/renderer/platform/graphics/paint/cull_rect.h"
#include "third_party/blink/renderer/platform/graphics/paint/drawing_display_item.h"
#include "third_party/blink/renderer/platform/graphics/paint/drawing_recorder.h"
#include "third_party/blink/renderer/platform/graphics/paint/paint_controller.h"
#include "third_party/blink/renderer/platform/theme/web_theme_engine_helper.h"
#include "ui/color/color_provider.h"

#if !BUILDFLAG(IS_MAC)
#include "third_party/blink/public/platform/web_theme_engine.h"
#endif

namespace blink {

ScrollbarPart ScrollbarTheme::HitTestRootFramePosition(
    const Scrollbar& scrollbar,
    const gfx::Point& position_in_root_frame) const {}

ScrollbarPart ScrollbarTheme::HitTest(const Scrollbar& scrollbar,
                                      const gfx::Point& test_position) const {}

void ScrollbarTheme::PaintScrollCorner(
    GraphicsContext& context,
    const ScrollableArea& scrollable_area,
    const DisplayItemClient& display_item_client,
    const gfx::Rect& corner_rect) {}

void ScrollbarTheme::PaintTickmarks(GraphicsContext& context,
                                    const Scrollbar& scrollbar,
                                    const gfx::Rect& rect) {}

base::TimeDelta ScrollbarTheme::OverlayScrollbarFadeOutDelay() const {}

base::TimeDelta ScrollbarTheme::OverlayScrollbarFadeOutDuration() const {}

int ScrollbarTheme::ThumbPosition(const Scrollbar& scrollbar,
                                  float scroll_position) const {}

int ScrollbarTheme::ThumbLength(const Scrollbar& scrollbar) const {}

int ScrollbarTheme::TrackPosition(const Scrollbar& scrollbar) const {}

int ScrollbarTheme::TrackLength(const Scrollbar& scrollbar) const {}

gfx::Rect ScrollbarTheme::ThumbRect(const Scrollbar& scrollbar) const {}

void ScrollbarTheme::SplitTrack(const Scrollbar& scrollbar,
                                const gfx::Rect& unconstrained_track_rect,
                                gfx::Rect& before_thumb_rect,
                                gfx::Rect& thumb_rect,
                                gfx::Rect& after_thumb_rect) const {}

base::TimeDelta ScrollbarTheme::InitialAutoscrollTimerDelay() const {}

base::TimeDelta ScrollbarTheme::AutoscrollTimerDelay() const {}

ScrollbarTheme& ScrollbarTheme::GetTheme() {}

void ScrollbarTheme::PaintTrackBackgroundAndButtons(GraphicsContext& context,
                                                    const Scrollbar& scrollbar,
                                                    const gfx::Rect& rect) {}

void ScrollbarTheme::PaintTrackAndButtons(GraphicsContext& context,
                                          const Scrollbar& scrollbar,
                                          const gfx::Rect& rect) {}

}  // namespace blink