From 3b7401b065d78582fe67591f37d36021e94d2f0a Mon Sep 17 00:00:00 2001 From: Vaxry <43317083+vaxerski@users.noreply.github.com> Date: Mon, 2 Mar 2026 19:31:33 +0000 Subject: algo/scroll: improve directional moves (#13423) --- src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp') diff --git a/src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp b/src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp index c6cda4b5..77ab74b1 100644 --- a/src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp +++ b/src/layout/algorithm/tiled/scrolling/ScrollTapeController.cpp @@ -55,12 +55,14 @@ size_t CScrollTapeController::addStrip(float size) { return m_strips.size() - 1; } -void CScrollTapeController::insertStrip(size_t afterIndex, float size) { - if (afterIndex >= m_strips.size()) { +void CScrollTapeController::insertStrip(ssize_t afterIndex, float size) { + if (afterIndex >= sc(m_strips.size())) { addStrip(size); return; } + afterIndex = std::clamp(afterIndex, -1L, sc(INT32_MAX)); + SStripData newStrip; newStrip.size = size; m_strips.insert(m_strips.begin() + afterIndex + 1, newStrip); -- cgit v1.2.3