From 4900e04ff321ef434b0f1afff679389893a6fefe Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Thu, 13 Apr 2023 12:19:11 +0200 Subject: [PATCH] Fix window refreshing --- crates/gpui/src/app.rs | 3 +++ crates/gpui/src/app/window.rs | 3 +++ 2 files changed, 6 insertions(+) diff --git a/crates/gpui/src/app.rs b/crates/gpui/src/app.rs index b680024ab1..c1fe8f841d 100644 --- a/crates/gpui/src/app.rs +++ b/crates/gpui/src/app.rs @@ -1985,6 +1985,9 @@ impl AppContext { for window_id in window_ids { self.update_window(window_id, |cx| { let mut invalidation = cx.window.invalidation.take().unwrap_or_default(); + invalidation + .updated + .extend(cx.window.rendered_views.keys().copied()); cx.invalidate(&mut invalidation, cx.window.platform_window.appearance()); cx.refreshing = true; let scene = cx.build_scene(); diff --git a/crates/gpui/src/app/window.rs b/crates/gpui/src/app/window.rs index 4ae0e9326a..7ca1f32c10 100644 --- a/crates/gpui/src/app/window.rs +++ b/crates/gpui/src/app/window.rs @@ -738,6 +738,9 @@ impl<'a: 'b, 'b> WindowContext<'a, 'b> { RectF::from_points(Vector2F::zero(), window_size), self, ); + self.window + .rendered_views + .insert(root_view_id, rendered_root); self.window.text_layout_cache.finish_frame(); let scene = scene_builder.build();