fixed regression in scrollbars in divs
This commit is contained in:
parent
777e974841
commit
c1bf8e891b
@ -106,10 +106,12 @@ fn void? Ctx.div_end(&ctx)
|
|||||||
// vertical overflow
|
// vertical overflow
|
||||||
elem.div.scroll_y.on = cbc.y > bc.y && elem.div.scroll_y.enabled;
|
elem.div.scroll_y.on = cbc.y > bc.y && elem.div.scroll_y.enabled;
|
||||||
|
|
||||||
Id hsid = ctx.gen_id(@str_hash("div_scrollbar_horizontal"))!;
|
Id hsid_raw = @str_hash("div_scrollbar_horizontal");
|
||||||
Id vsid = ctx.gen_id(@str_hash("div_scrollbar_vertical"))!;
|
Id vsid_raw = @str_hash("div_scrollbar_vertical");
|
||||||
short wdim = elem.div.scroll_y.on ? (ctx.focus_id == vsid || ctx.is_hovered(ctx.find_elem(vsid)) ? SCROLLBAR_DIM*3 : SCROLLBAR_DIM) : 0;
|
Id hsid_real = ctx.gen_id(@str_hash("div_scrollbar_horizontal"))!;
|
||||||
short hdim = elem.div.scroll_x.on ? (ctx.focus_id == hsid || ctx.is_hovered(ctx.find_elem(hsid)) ? SCROLLBAR_DIM*3 : SCROLLBAR_DIM) : 0;
|
Id vsid_real = ctx.gen_id(@str_hash("div_scrollbar_vertical"))!;
|
||||||
|
short wdim = elem.div.scroll_y.on ? (ctx.focus_id == vsid_real || ctx.is_hovered(ctx.find_elem(vsid_real)) ? SCROLLBAR_DIM*3 : SCROLLBAR_DIM) : 0;
|
||||||
|
short hdim = elem.div.scroll_x.on ? (ctx.focus_id == hsid_real || ctx.is_hovered(ctx.find_elem(hsid_real)) ? SCROLLBAR_DIM*3 : SCROLLBAR_DIM) : 0;
|
||||||
|
|
||||||
if (elem.div.scroll_y.on) {
|
if (elem.div.scroll_y.on) {
|
||||||
if (ctx.input.events.mouse_scroll && ctx.hover_id == elem.id) {
|
if (ctx.input.events.mouse_scroll && ctx.hover_id == elem.id) {
|
||||||
@ -124,7 +126,7 @@ fn void? Ctx.div_end(&ctx)
|
|||||||
};
|
};
|
||||||
Layout prev_l = elem.div.layout;
|
Layout prev_l = elem.div.layout;
|
||||||
elem.div.layout = LAYOUT_ABSOLUTE;
|
elem.div.layout = LAYOUT_ABSOLUTE;
|
||||||
ctx.slider_ver_id(vsid, vslider, &elem.div.scroll_y.value, max((float)bc.y / cbc.y, (float)0.15))!;
|
ctx.slider_ver_id(vsid_raw, vslider, &elem.div.scroll_y.value, max((float)bc.y / cbc.y, (float)0.15))!;
|
||||||
elem.div.layout = prev_l;
|
elem.div.layout = prev_l;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -141,7 +143,7 @@ fn void? Ctx.div_end(&ctx)
|
|||||||
};
|
};
|
||||||
Layout prev_l = elem.div.layout;
|
Layout prev_l = elem.div.layout;
|
||||||
elem.div.layout = LAYOUT_ABSOLUTE;
|
elem.div.layout = LAYOUT_ABSOLUTE;
|
||||||
ctx.slider_hor_id(hsid, hslider, &elem.div.scroll_x.value, max((float)bc.x / cbc.x, (float)0.15))!;
|
ctx.slider_hor_id(hsid_raw, hslider, &elem.div.scroll_x.value, max((float)bc.x / cbc.x, (float)0.15))!;
|
||||||
elem.div.layout = prev_l;
|
elem.div.layout = prev_l;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user