@Override
  public final void update(@NotNull AnActionEvent e) {
    e.getPresentation().copyFrom(getTemplatePresentation());

    commonUpdate(e);
    if (!e.getPresentation().isEnabled()) {
      return;
    }

    AnActionExtensionProvider provider = getProvider(e);
    if (provider != null) {
      ActionUpdateThread thread = provider.getActionUpdateThread();
      if (thread == ActionUpdateThread.BGT || EDT.isCurrentThreadEdt()) {
        provider.update(e);
      }
      else {
        e.getUpdateSession().compute(provider, "update", thread, () -> {
          provider.update(e);
          return true;
        });
      }
    }
    else {
      defaultUpdate(e);
    }
  }
@Override
  public final void update(@NotNull AnActionEvent e)