mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-01 12:07:14 +02:00
25 lines
740 B
C++
25 lines
740 B
C++
/*
|
|
* Copyright (c) 2025, Aliaksandr Kalenik <kalenik.aliaksandr@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#include <AK/Vector.h>
|
|
#include <LibWeb/Painting/ScrollState.h>
|
|
|
|
namespace Web::Painting {
|
|
|
|
ScrollStateSnapshot ScrollStateSnapshot::create(Vector<ScrollFrame> const& scroll_frames, double device_pixels_per_css_pixel)
|
|
{
|
|
ScrollStateSnapshot snapshot;
|
|
auto scale = static_cast<float>(device_pixels_per_css_pixel);
|
|
snapshot.m_device_offsets.ensure_capacity(scroll_frames.size());
|
|
for (auto const& scroll_frame : scroll_frames) {
|
|
auto const& offset = scroll_frame.own_offset();
|
|
snapshot.m_device_offsets.unchecked_append(offset.to_type<float>() * scale);
|
|
}
|
|
return snapshot;
|
|
}
|
|
|
|
}
|