diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-05-14 14:36:56 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2020-05-14 14:36:56 +0100 |
commit | 87470e8f13252c12f3720a9d4235e7e5242b48dc (patch) | |
tree | 40a5942523ab3e7f86cf3829c40cc752fc3c8ce1 /crates | |
parent | d7c451ed9523039d96daa3facfd0eb9137afbaed (diff) | |
parent | acedad8134669b3deba48e59d28e62334ae5c4d4 (diff) |
Merge #4456
4456: Sort preselect items on top r=matklad a=matklad
bors r+
🤖
Co-authored-by: Aleksey Kladov <[email protected]>
Diffstat (limited to 'crates')
-rw-r--r-- | crates/rust-analyzer/src/to_proto.rs | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/crates/rust-analyzer/src/to_proto.rs b/crates/rust-analyzer/src/to_proto.rs index 33c2fd595..a8e2e535f 100644 --- a/crates/rust-analyzer/src/to_proto.rs +++ b/crates/rust-analyzer/src/to_proto.rs | |||
@@ -164,27 +164,27 @@ pub(crate) fn completion_item( | |||
164 | additional_text_edits: Some(additional_text_edits), | 164 | additional_text_edits: Some(additional_text_edits), |
165 | documentation: completion_item.documentation().map(documentation), | 165 | documentation: completion_item.documentation().map(documentation), |
166 | deprecated: Some(completion_item.deprecated()), | 166 | deprecated: Some(completion_item.deprecated()), |
167 | command: if completion_item.trigger_call_info() { | ||
168 | let cmd = lsp_types::Command { | ||
169 | title: "triggerParameterHints".into(), | ||
170 | command: "editor.action.triggerParameterHints".into(), | ||
171 | arguments: None, | ||
172 | }; | ||
173 | Some(cmd) | ||
174 | } else { | ||
175 | None | ||
176 | }, | ||
177 | ..Default::default() | 167 | ..Default::default() |
178 | }; | 168 | }; |
179 | 169 | ||
180 | if completion_item.score().is_some() { | 170 | if completion_item.score().is_some() { |
181 | res.preselect = Some(true) | 171 | res.preselect = Some(true); |
172 | // HACK: sort preselect items first | ||
173 | res.sort_text = Some(format!(" {}", completion_item.label())); | ||
182 | } | 174 | } |
183 | 175 | ||
184 | if completion_item.deprecated() { | 176 | if completion_item.deprecated() { |
185 | res.tags = Some(vec![lsp_types::CompletionItemTag::Deprecated]) | 177 | res.tags = Some(vec![lsp_types::CompletionItemTag::Deprecated]) |
186 | } | 178 | } |
187 | 179 | ||
180 | if completion_item.trigger_call_info() { | ||
181 | res.command = Some(lsp_types::Command { | ||
182 | title: "triggerParameterHints".into(), | ||
183 | command: "editor.action.triggerParameterHints".into(), | ||
184 | arguments: None, | ||
185 | }); | ||
186 | } | ||
187 | |||
188 | res.insert_text_format = Some(insert_text_format(completion_item.insert_text_format())); | 188 | res.insert_text_format = Some(insert_text_format(completion_item.insert_text_format())); |
189 | 189 | ||
190 | res | 190 | res |