T11b loading: progress bars and rings that glide, loading overlay, lazy load, suspense and async view, refresh and typing indicators, upload list; draw-time notifies ask for a frame

This commit is contained in:
ZacharyZhang-NY committed 2026-09-25 17:27:21 -04:00
1 parent d4066661d5
commit ce31c7fb06
38 files changed
+1646 -91

No files matched your search

+4 -2
View File
@@ -22,11 +22,12 @@ fn shortest(heights: &[Pixels]) -> usize {
fn measure_width(state: gpui::Entity<Pixels>) -> impl IntoElement {
canvas(
move |bounds, _, cx| {
move |bounds, window, cx| {
if *state.read(cx) != bounds.size.width {
state.update(cx, |width, cx| {
*width = bounds.size.width;
cx.notify();
window.request_animation_frame();
});
}
},
@@ -135,11 +136,12 @@ impl RenderOnce for Masonry {
.child(child)
.child(
canvas(
move |bounds, _, cx| {
move |bounds, window, cx| {
if state.read(cx)[ix] != bounds.size.height {
state.update(cx, |heights, cx| {
heights[ix] = bounds.size.height;
cx.notify();
window.request_animation_frame();
});
}
},