]> git.lizzy.rs Git - rust.git/commitdiff
workaround for trigger character
authorgfreezy <gfreezy@gmail.com>
Sun, 20 Jan 2019 05:34:16 +0000 (13:34 +0800)
committergfreezy <gfreezy@gmail.com>
Sun, 20 Jan 2019 05:34:16 +0000 (13:34 +0800)
crates/ra_ide_api/src/completion/completion_context.rs

index fd4cfc9449553b9bd18108fdaa8550a0d8d628e0..7bc2def14416ac89415dd06b5d59800e7f47db38 100644 (file)
@@ -69,7 +69,11 @@ pub(super) fn new(
     // This is purely advisory and can be used, for example, to highlight this range in the editor.
     // Clients are expected to ignore this field.
     pub(crate) fn source_range(&self) -> TextRange {
-        self.leaf.range()
+        match self.leaf.kind() {
+            // workaroud when completion is triggered by trigger characters.
+            DOT | COLONCOLON => TextRange::from_to(self.offset, self.offset),
+            _ => self.leaf.range()
+        }
     }
 
     fn fill(&mut self, original_file: &'a SourceFile, offset: TextUnit) {