message: Add the preselect boolean
diff: @@ -36,8 +36,7 @@ export default class OmniSharpCompletionItemProvider extends AbstractSupport imp
  req.WantDocumentationForEveryCompletionResult = true;
  req.WantKind = true;
  req.WantReturnType = true;
  - if (context.triggerKind == CompletionTriggerKind.TriggerCharacter)
  - {
  + if (context.triggerKind == CompletionTriggerKind.TriggerCharacter) {
  req.TriggerCharacter = context.triggerCharacter;
  }
  @@ -48,7 +47,7 @@ export default class OmniSharpCompletionItemProvider extends AbstractSupport imp
  }
  let result: CompletionItem[] = [];
  - let completions: { [c: string]: CompletionItem[] } = Object.create(null);
  + let completions: { [c: string]: { items: CompletionItem[], preselect : boolean } } = Object.create(null);
  // transform AutoCompleteResponse to CompletionItem and
  // group by code snippet
  @@ -69,20 +68,21 @@ export default class OmniSharpCompletionItemProvider extends AbstractSupport imp
  completion.preselect = response.Preselect;
  - let array = completions[completion.label];
  - if (!array) {
  - completions[completion.label] = [completion];
  + let completionSet = completions[completion.label];
  + if (!completionSet) {
  + completions[completion.label] = { items: [completion], preselect: completion.preselect };
  }
  else {
  - array.push(completion);
  + completionSet.preselect = completionSet.preselect || completion.preselect;
  + completionSet.items.push(completion);
  }
  }
  // per suggestion group, select on and indicate overloads
  for (let key in completions) {
  - let suggestion = completions[key][0],
  - overloadCount = completions[key].length - 1;
  + let suggestion = completions[key].items[0],
  + overloadCount = completions[key].items.length - 1;
  if (overloadCount === 0) {
  // remove non overloaded items
  @@ -92,6 +92,7 @@ export default class OmniSharpCompletionItemProvider extends AbstractSupport imp
  else {
  // indicate that there is more
  suggestion.detail = `${suggestion.detail} (+ ${overloadCount} overload(s))`;
  + suggestion.preselect = completions[key].preselect;
  }
  result.push(suggestion);
  