/* * Copyright (c) 2025, Aliaksandr Kalenik * * SPDX-License-Identifier: BSD-2-Clause */ #include #include namespace Web::Painting { ScrollStateSnapshot ScrollStateSnapshot::create(Vector const& scroll_frames, double device_pixels_per_css_pixel) { ScrollStateSnapshot snapshot; auto scale = static_cast(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() * scale); } return snapshot; } }