@@ -253,6 +253,17 @@ impl Completion {
253 // always present here
253 // always present here
254 let item = item.unwrap();
254 let item = item.unwrap();
256+ // apply additional edits, mostly used to auto import unqualified types
257+ let resolved_item = if item
258+ .additional_text_edits
260+ .map(|edits| !edits.is_empty())
265+ Self::resolve_completion_item(doc, item.clone())
257 // if more text was entered, remove it
268 // if more text was entered, remove it
258 doc.restore(view, &savepoint, true);
269 doc.restore(view, &savepoint, true);
@@ -272,17 +283,6 @@ impl Completion {
272 changes: completion_changes(&transaction, trigger_offset),
283 changes: completion_changes(&transaction, trigger_offset),
275− // apply additional edits, mostly used to auto import unqualified types
276− let resolved_item = if item
277− .additional_text_edits
279− .map(|edits| !edits.is_empty())
284− Self::resolve_completion_item(doc, item.clone())
286 if let Some(additional_edits) = resolved_item
286 if let Some(additional_edits) = resolved_item
287 .as_ref()
287 .as_ref()
288 .and_then(|item| item.additional_text_edits.as_ref())
288 .and_then(|item| item.additional_text_edits.as_ref())