From 61df7baed0129b4c7075c163ab539294262dfb1f Mon Sep 17 00:00:00 2001 From: Krzosa Karol Date: Wed, 22 Jan 2025 09:01:17 +0100 Subject: [PATCH] ui, fix scroller --- src/ui/ui.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ui/ui.c b/src/ui/ui.c index edf2cb7..21ab925 100644 --- a/src/ui/ui.c +++ b/src/ui/ui.c @@ -615,13 +615,12 @@ fn void ui_demo_update(app_frame_t *frame) { } locl f32 scroller_value; - // @todo: fix scroller to match mouse defer_block(ui_push_top(scroller_box), ui_pop_top()) { f32 item_count = (f32)item_box->node_count; f32 all_items_size = item_count * rn_state.main_font->size; f32 item_box_size = r2f32_get_size(ui->top->full_rect).y; f32 scroller_box_size = r2f32_get_size(scroller_box->full_rect).y; - f32 scroller_size = CLAMP(item_box_size / all_items_size, 0, 1.0f); + f32 scroller_size = CLAMP(item_box_size / (all_items_size + frame->window_size.y), 0, 1.0f); f32 scrollable_space = (1 - scroller_size); f32 scroller_norm = scroller_value / (all_items_size); f32 scroller_percent = scroller_norm * scrollable_space;