diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/AnalysisServerDiagnosticsAction.java b/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/AnalysisServerDiagnosticsAction.java index ff9374d03..2cce3b40a 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/AnalysisServerDiagnosticsAction.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/AnalysisServerDiagnosticsAction.java @@ -6,6 +6,7 @@ import com.intellij.notification.Notification; import com.intellij.notification.NotificationType; import com.intellij.notification.Notifications; +import com.intellij.openapi.actionSystem.ActionManager; import com.intellij.openapi.actionSystem.ActionUpdateThread; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.DumbAwareAction; @@ -17,6 +18,7 @@ import com.jetbrains.lang.dart.analyzer.DartAnalysisServerService; import org.dartlang.analysis.server.protocol.RequestError; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public class AnalysisServerDiagnosticsAction extends DumbAwareAction { @@ -41,12 +43,10 @@ public void actionPerformed(@NotNull AnActionEvent e) { final Project project = e.getProject(); if (project == null) return; - run(project); - - Analytics.report(AnalyticsData.forAction(this, e)); + run(project, e); } - void run(final @NotNull Project project) { + void run(final @NotNull Project project, @Nullable AnActionEvent event) { // Get the current analysis server. DartAnalysisServerService server = DartAnalysisServerService.getInstance(project); @@ -66,5 +66,14 @@ public void onError(RequestError requestError) { Notifications.Bus.notify(notification); } }); + + if (event != null) { + Analytics.report(AnalyticsData.forAction(this, event)); + } else { + ActionManager actionManager = ActionManager.getInstance(); + if (actionManager != null) { + Analytics.report(AnalyticsData.forAction(actionManager.getId(this), project)); + } + } } } diff --git a/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/DartAnalysisServerSettingsForm.java b/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/DartAnalysisServerSettingsForm.java index 430a28435..0dc54f361 100644 --- a/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/DartAnalysisServerSettingsForm.java +++ b/third_party/src/main/java/com/jetbrains/lang/dart/ide/errorTreeView/DartAnalysisServerSettingsForm.java @@ -39,7 +39,7 @@ protected void hyperlinkActivated(final @NotNull HyperlinkEvent e) { myAnalysisDiagnosticsHyperlink.addHyperlinkListener(new HyperlinkAdapter() { @Override protected void hyperlinkActivated(final @NotNull HyperlinkEvent e) { - new AnalysisServerDiagnosticsAction().run(myProject); + new AnalysisServerDiagnosticsAction().run(myProject, null); } }); }