diff --git a/src/io/flutter/actions/ExtractWidgetAction.java b/src/io/flutter/actions/ExtractWidgetAction.java index cef036101..6641cecf9 100644 --- a/src/io/flutter/actions/ExtractWidgetAction.java +++ b/src/io/flutter/actions/ExtractWidgetAction.java @@ -18,6 +18,8 @@ import com.intellij.refactoring.util.CommonRefactoringUtil; import com.intellij.ui.DocumentAdapter; import com.intellij.util.ui.JBUI; +import com.jetbrains.lang.dart.analytics.Analytics; +import com.jetbrains.lang.dart.analytics.AnalyticsData; import com.jetbrains.lang.dart.ide.refactoring.ServerRefactoringDialog; import com.jetbrains.lang.dart.ide.refactoring.status.RefactoringStatus; import io.flutter.FlutterUtils; @@ -25,9 +27,14 @@ import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import javax.swing.*; +import javax.swing.JComponent; +import javax.swing.JLabel; +import javax.swing.JPanel; +import javax.swing.JTextField; import javax.swing.event.DocumentEvent; -import java.awt.*; +import java.awt.Dimension; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; public class ExtractWidgetAction extends DumbAwareAction { @Override @@ -43,6 +50,8 @@ public void actionPerformed(@NotNull AnActionEvent event) { final Caret caret = dataContext.getData(PlatformDataKeys.CARET); if (project != null && file != null && editor != null && caret != null) { + Analytics.report(AnalyticsData.forAction(this, event)); + final int offset = caret.getSelectionStart(); final int length = caret.getSelectionEnd() - offset; final ExtractWidgetRefactoring refactoring = new ExtractWidgetRefactoring(project, file, offset, length); diff --git a/src/io/flutter/actions/FlutterBuildActionGroup.java b/src/io/flutter/actions/FlutterBuildActionGroup.java index ee4ab490b..d2c024889 100644 --- a/src/io/flutter/actions/FlutterBuildActionGroup.java +++ b/src/io/flutter/actions/FlutterBuildActionGroup.java @@ -8,12 +8,18 @@ import com.intellij.execution.process.ColoredProcessHandler; import com.intellij.execution.process.ProcessAdapter; import com.intellij.execution.process.ProcessEvent; -import com.intellij.openapi.actionSystem.*; +import com.intellij.openapi.actionSystem.ActionUpdateThread; +import com.intellij.openapi.actionSystem.AnAction; +import com.intellij.openapi.actionSystem.AnActionEvent; +import com.intellij.openapi.actionSystem.DefaultActionGroup; +import com.intellij.openapi.actionSystem.Presentation; import com.intellij.openapi.module.Module; import com.intellij.openapi.module.ModuleUtilCore; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.SystemInfo; import com.intellij.openapi.vfs.VirtualFile; +import com.jetbrains.lang.dart.analytics.Analytics; +import com.jetbrains.lang.dart.analytics.AnalyticsData; import io.flutter.FlutterMessages; import io.flutter.pub.PubRoot; import io.flutter.pub.PubRoots; @@ -118,6 +124,8 @@ public static Module findFlutterModule(@NotNull Project project, @NotNull Virtua abstract public static class FlutterBuildAction extends AnAction { + public static String ID_PREFIX = "flutter.build"; + @NotNull abstract protected BuildType buildType(); @@ -128,6 +136,9 @@ public void actionPerformed(@NotNull AnActionEvent event) { if (project == null) { return; } + + Analytics.report(AnalyticsData.forAction(ID_PREFIX + "." + buildType().type, event.getPlace(), project)); + final FlutterSdk sdk = FlutterSdk.getFlutterSdk(project); if (sdk == null) { return; diff --git a/src/io/flutter/actions/FlutterNewProjectAction.kt b/src/io/flutter/actions/FlutterNewProjectAction.kt index f8d905214..19af00e60 100644 --- a/src/io/flutter/actions/FlutterNewProjectAction.kt +++ b/src/io/flutter/actions/FlutterNewProjectAction.kt @@ -14,6 +14,8 @@ import com.intellij.openapi.application.EDT import com.intellij.openapi.project.DumbAware import com.intellij.openapi.roots.ui.configuration.ModulesProvider import com.intellij.openapi.wm.impl.welcomeScreen.NewWelcomeScreen +import com.jetbrains.lang.dart.analytics.Analytics +import com.jetbrains.lang.dart.analytics.AnalyticsData import io.flutter.FlutterBundle import io.flutter.FlutterUtils import kotlinx.coroutines.* @@ -44,6 +46,7 @@ class FlutterNewProjectAction : AnAction(), DumbAware { createNewProjectAsync(wizard) } + Analytics.report(AnalyticsData.forAction(this, e)); } override fun getActionUpdateThread() = ActionUpdateThread.BGT diff --git a/src/io/flutter/actions/RestartFlutterDaemonAction.java b/src/io/flutter/actions/RestartFlutterDaemonAction.java index 4bd65c4a6..80af7b9b2 100644 --- a/src/io/flutter/actions/RestartFlutterDaemonAction.java +++ b/src/io/flutter/actions/RestartFlutterDaemonAction.java @@ -10,12 +10,14 @@ import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.NlsActions; +import com.jetbrains.lang.dart.analytics.Analytics; +import com.jetbrains.lang.dart.analytics.AnalyticsData; import icons.FlutterIcons; import io.flutter.run.daemon.DeviceService; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import javax.swing.*; +import javax.swing.Icon; public class RestartFlutterDaemonAction extends AnAction { @@ -52,6 +54,8 @@ public void actionPerformed(@NotNull AnActionEvent event) { } DeviceService.getInstance(project).restart(); + + Analytics.report(AnalyticsData.forAction(this, event)); } @Override diff --git a/src/io/flutter/actions/RunFlutterAction.java b/src/io/flutter/actions/RunFlutterAction.java index 725b8014a..839ed0d5e 100644 --- a/src/io/flutter/actions/RunFlutterAction.java +++ b/src/io/flutter/actions/RunFlutterAction.java @@ -17,6 +17,8 @@ import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.project.Project; +import com.jetbrains.lang.dart.analytics.Analytics; +import com.jetbrains.lang.dart.analytics.AnalyticsData; import io.flutter.FlutterBundle; import io.flutter.run.FlutterLaunchMode; import io.flutter.run.LaunchState; @@ -100,6 +102,8 @@ public void actionPerformed(@NotNull AnActionEvent e) { FlutterLaunchMode.addToEnvironment(env, myLaunchMode); ProgramRunnerUtil.executeConfiguration(env, false, true); + + Analytics.report(AnalyticsData.forAction(this, e)); } @Override