editor: Drop multiline targets in navigation buffers (#36291)

Lukas Wirth created

Release Notes:

- N/A

Change summary

crates/editor/src/editor.rs | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)

Detailed changes

crates/editor/src/editor.rs 🔗

@@ -15909,10 +15909,15 @@ impl Editor {
                                     .text_for_range(location.range.clone())
                                     .collect::<String>()
                             })
+                            .filter(|text| !text.contains('\n'))
                             .unique()
                             .take(3)
                             .join(", ");
-                        format!("{tab_kind} for {target}")
+                        if target.is_empty() {
+                            tab_kind.to_owned()
+                        } else {
+                            format!("{tab_kind} for {target}")
+                        }
                     })
                     .context("buffer title")?;
 
@@ -16117,10 +16122,15 @@ impl Editor {
                             .text_for_range(location.range.clone())
                             .collect::<String>()
                     })
+                    .filter(|text| !text.contains('\n'))
                     .unique()
                     .take(3)
                     .join(", ");
-                let title = format!("References to {target}");
+                let title = if target.is_empty() {
+                    "References".to_owned()
+                } else {
+                    format!("References to {target}")
+                };
                 Self::open_locations_in_multibuffer(
                     workspace,
                     locations,