|
|
@ -1029,11 +1029,12 @@ pub fn rename_symbol(cx: &mut Context) {
|
|
|
|
fn create_rename_prompt(
|
|
|
|
fn create_rename_prompt(
|
|
|
|
editor: &Editor,
|
|
|
|
editor: &Editor,
|
|
|
|
prefill: String,
|
|
|
|
prefill: String,
|
|
|
|
|
|
|
|
history_register: Option<char>,
|
|
|
|
language_server_id: Option<LanguageServerId>,
|
|
|
|
language_server_id: Option<LanguageServerId>,
|
|
|
|
) -> Box<ui::Prompt> {
|
|
|
|
) -> Box<ui::Prompt> {
|
|
|
|
let prompt = ui::Prompt::new(
|
|
|
|
let prompt = ui::Prompt::new(
|
|
|
|
"rename-to:".into(),
|
|
|
|
"rename-to:".into(),
|
|
|
|
None,
|
|
|
|
history_register,
|
|
|
|
ui::completers::none,
|
|
|
|
ui::completers::none,
|
|
|
|
move |cx: &mut compositor::Context, input: &str, event: PromptEvent| {
|
|
|
|
move |cx: &mut compositor::Context, input: &str, event: PromptEvent| {
|
|
|
|
if event != PromptEvent::Validate {
|
|
|
|
if event != PromptEvent::Validate {
|
|
|
@ -1070,6 +1071,7 @@ pub fn rename_symbol(cx: &mut Context) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
let (view, doc) = current_ref!(cx.editor);
|
|
|
|
let (view, doc) = current_ref!(cx.editor);
|
|
|
|
|
|
|
|
let history_register = cx.register;
|
|
|
|
|
|
|
|
|
|
|
|
if doc
|
|
|
|
if doc
|
|
|
|
.language_servers_with_feature(LanguageServerFeature::RenameSymbol)
|
|
|
|
.language_servers_with_feature(LanguageServerFeature::RenameSymbol)
|
|
|
@ -1112,14 +1114,14 @@ pub fn rename_symbol(cx: &mut Context) {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
let prompt = create_rename_prompt(editor, prefill, Some(ls_id));
|
|
|
|
let prompt = create_rename_prompt(editor, prefill, history_register, Some(ls_id));
|
|
|
|
|
|
|
|
|
|
|
|
compositor.push(prompt);
|
|
|
|
compositor.push(prompt);
|
|
|
|
},
|
|
|
|
},
|
|
|
|
);
|
|
|
|
);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
let prefill = get_prefill_from_word_boundary(cx.editor);
|
|
|
|
let prefill = get_prefill_from_word_boundary(cx.editor);
|
|
|
|
let prompt = create_rename_prompt(cx.editor, prefill, None);
|
|
|
|
let prompt = create_rename_prompt(cx.editor, prefill, history_register, None);
|
|
|
|
cx.push_layer(prompt);
|
|
|
|
cx.push_layer(prompt);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|