From 90b45f059cb2dc2848045b787dbd6f1999ac1ab5 Mon Sep 17 00:00:00 2001 From: Nic Barker Date: Thu, 1 May 2025 17:21:09 +1200 Subject: [PATCH] [Core] Fix a bug with the implementation of clip .childOffset --- clay.h | 10 ++-------- examples/raylib-sidebar-scrolling-container/main.c | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/clay.h b/clay.h index fc4c248..ce6a1a8 100644 --- a/clay.h +++ b/clay.h @@ -2690,12 +2690,7 @@ void Clay__CalculateFinalLayout(void) { if (mapping->layoutElement == currentElement) { scrollContainerData = mapping; mapping->boundingBox = currentElementBoundingBox; - if (clipConfig->horizontal) { - scrollOffset.x = mapping->scrollPosition.x; - } - if (clipConfig->vertical) { - scrollOffset.y = mapping->scrollPosition.y; - } + scrollOffset = clipConfig->childOffset; if (context->externalScrollHandlingEnabled) { scrollOffset = CLAY__INIT(Clay_Vector2) CLAY__DEFAULT_STRUCT; } @@ -2917,8 +2912,7 @@ void Clay__CalculateFinalLayout(void) { for (int32_t i = 0; i < context->scrollContainerDatas.length; i++) { Clay__ScrollContainerDataInternal *mapping = Clay__ScrollContainerDataInternalArray_Get(&context->scrollContainerDatas, i); if (mapping->layoutElement == currentElement) { - if (clipConfig->horizontal) { scrollOffset.x = mapping->scrollPosition.x; } - if (clipConfig->vertical) { scrollOffset.y = mapping->scrollPosition.y; } + scrollOffset = clipConfig->childOffset; if (context->externalScrollHandlingEnabled) { scrollOffset = CLAY__INIT(Clay_Vector2) CLAY__DEFAULT_STRUCT; } diff --git a/examples/raylib-sidebar-scrolling-container/main.c b/examples/raylib-sidebar-scrolling-container/main.c index 8265eef..52797a8 100644 --- a/examples/raylib-sidebar-scrolling-container/main.c +++ b/examples/raylib-sidebar-scrolling-container/main.c @@ -127,7 +127,7 @@ Clay_RenderCommandArray CreateLayout(void) { .attachTo = CLAY_ATTACH_TO_ELEMENT_WITH_ID, .offset = { .y = -(scrollData.scrollPosition->y / scrollData.contentDimensions.height) * scrollData.scrollContainerDimensions.height }, .zIndex = 1, - .parentId = 55, + .parentId = Clay_GetElementId(CLAY_STRING("MainContent")).id, .attachPoints = { .element = CLAY_ATTACH_POINT_RIGHT_TOP, .parent = CLAY_ATTACH_POINT_RIGHT_TOP } } }) { -- 2.39.5