@@ -270,12 +270,8 @@ impl Application {
270270 }
271271 let editor_view = self
272272 .compositor
273− .find(std::any::type_name::<ui::EditorView>())
273+ .find::<ui::EditorView>()
274274 .expect("expected at least one EditorView");
275− let editor_view = editor_view
276− .as_any_mut()
277− .downcast_mut::<ui::EditorView>()
278− .unwrap();
279275
280276 if editor_view.completion.is_some() {
281277 return;
@@ -440,12 +436,8 @@ impl Application {
440436 {
441437 let editor_view = self
442438 .compositor
443− .find(std::any::type_name::<ui::EditorView>())
439+ .find::<ui::EditorView>()
444440 .expect("expected at least one EditorView");
445− let editor_view = editor_view
446− .as_any_mut()
447− .downcast_mut::<ui::EditorView>()
448− .unwrap();
449441 let lsp::ProgressParams { token, value } = params;
450442
451443 let lsp::ProgressParamsValue::WorkDone(work) = value;
@@ -559,12 +551,8 @@ impl Application {
559551
560552 let editor_view = self
561553 .compositor
562− .find(std::any::type_name::<ui::EditorView>())
554+ .find::<ui::EditorView>()
563555 .expect("expected at least one EditorView");
564− let editor_view = editor_view
565− .as_any_mut()
566− .downcast_mut::<ui::EditorView>()
567− .unwrap();
568556 let spinner = editor_view.spinners_mut().get_or_create(server_id);
569557 if spinner.is_stopped() {
570558 spinner.start();