protected void lookupItemSelected(final CompletionProgressIndicator indicator, final @NotNull LookupElement item, final char completionChar,
                                    final List<LookupElement> items) {
    WatchingInsertionContext context = null;
    try {
      StatisticsUpdate update = StatisticsUpdate.collectStatisticChanges(item);
      if (item.getUserData(DIRECT_INSERTION) != null) {
        context = callHandleInsert(indicator, item, completionChar);
      }
      else {
        context = insertItemHonorBlockSelection(indicator, item, completionChar, update);
      }
      update.trackStatistics(context);
    }
    finally {
      afterItemInsertion(indicator, context == null ? null : context.getLaterRunnable());
    }
  }
protected void lookupItemSelected(final CompletionProgressIndicator indicator, final @NotNull LookupElement item, final char completionChar,
                                    final List<LookupElement> items)