iris: add replaceable glyph atlas buckets

This commit is contained in:
iris committed 2026-09-12 18:10:55 -04:00
1 parent 1be6cc2248
commit 2b9d8c49a0
8 files changed
+342 -87

No files matched your search

+27
View File
@@ -362,6 +362,33 @@ fn scrolling_moves_in_o1_without_a_redraw() {
assert_eq!(moves, 1, "the scrolled subtree should move in one write");
}
#[test]
fn fractional_scrolling_keeps_primitive_edges_on_physical_pixels() {
let mut rsc = TestRsc { ui: Ui::default() };
let (scroll, root, rects) = scrolled_rects(&mut rsc, 20);
let mut render = UiRenderState::new();
render.resize((800.0, 600.0));
render.update(&root, &mut rsc);
rsc.ui.widgets.get_mut(&scroll).unwrap().scroll(0.0);
render.update(&root, &mut rsc);
rsc.ui.widgets.get_mut(&scroll).unwrap().scroll(-37.25);
render.update(&root, &mut rsc);
let slot = render
.first_primitive(rects[2].id())
.expect("the scrolled rect has a primitive");
let corners = render.primitive_corners(slot, &rsc);
for edge in [
corners.top_left.x,
corners.top_left.y,
corners.bot_right.x,
corners.bot_right.y,
] {
assert_eq!(edge.fract(), 0.0, "fractional rendered edge: {corners:?}");
}
}
#[test]
fn hit_testing_follows_a_scrolled_widget() {
let mut rsc = TestRsc { ui: Ui::default() };