@@ -2792,11 +2792,7 @@ pub mod cmd {
2792 Box::new(move |editor: &mut Editor, compositor: &mut Compositor| {
2792 Box::new(move |editor: &mut Editor, compositor: &mut Compositor| {
2793 let contents = ui::Markdown::new(contents, editor.syn_loader.clone());
2793 let contents = ui::Markdown::new(contents, editor.syn_loader.clone());
2794 let popup = Popup::new("hover", contents);
2794 let popup = Popup::new("hover", contents);
2795− if let Some(doc_popup) = compositor.find_id("hover") {
2795+ compositor.replace_or_push("hover", Box::new(popup));
2796− *doc_popup = popup;
2798− compositor.push(Box::new(popup));
2801 Ok(call)
2797 Ok(call)
@@ -3537,7 +3533,7 @@ pub fn code_action(cx: &mut Context) {
3537 vertical: 1,
3533 vertical: 1,
3538 horizontal: 1,
3534 horizontal: 1,
3540− compositor.push(Box::new(popup))
3536+ compositor.replace_or_push("code-action", Box::new(popup));
@@ -5465,11 +5461,7 @@ fn hover(cx: &mut Context) {
5465 let contents =
5461 let contents =
5466 ui::Markdown::new(contents, editor.syn_loader.clone()).style_group("hover");
5462 ui::Markdown::new(contents, editor.syn_loader.clone()).style_group("hover");
5467 let popup = Popup::new("hover", contents);
5463 let popup = Popup::new("hover", contents);
5468− if let Some(doc_popup) = compositor.find_id("hover") {
5464+ compositor.replace_or_push("hover", Box::new(popup));
5469− *doc_popup = popup;
5471− compositor.push(Box::new(popup));