From e7094cc98d3e5311645fd21c81b4557ba3a1ae0e Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Tue, 12 Dec 2023 09:43:33 +0100 Subject: [PATCH] Don't move `interactivity` unnecessarily during `layout` --- crates/gpui2/src/elements/div.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/crates/gpui2/src/elements/div.rs b/crates/gpui2/src/elements/div.rs index 7c365d8734f01d3339961debb84f12c37e1d53b7..73fcb73c98ad92b9634ac358218c91effcdb4de0 100644 --- a/crates/gpui2/src/elements/div.rs +++ b/crates/gpui2/src/elements/div.rs @@ -602,8 +602,7 @@ impl Element for Div { cx: &mut WindowContext, ) -> (LayoutId, Self::State) { let mut child_layout_ids = SmallVec::new(); - let mut interactivity = mem::take(&mut self.interactivity); - let (layout_id, interactive_state) = interactivity.layout( + let (layout_id, interactive_state) = self.interactivity.layout( element_state.map(|s| s.interactive_state), cx, |style, cx| { @@ -617,7 +616,6 @@ impl Element for Div { }) }, ); - self.interactivity = interactivity; ( layout_id, DivState {