diff --git a/gradle.properties b/gradle.properties index 53ebd2ce0a..610437a57f 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,8 +4,8 @@ # found in the LICENSE file. # -ideaVersion=2025.1.3.4 -dartPluginVersion= 251.27623.5 +ideaVersion=2025.2.1.3 +dartPluginVersion= 252.25557.23 sinceBuild=243 untilBuild=253.* javaVersion=21 diff --git a/src/io/flutter/FlutterErrorReportSubmitter.java b/src/io/flutter/FlutterErrorReportSubmitter.java index 7a0a1c8345..2bb3e127b1 100644 --- a/src/io/flutter/FlutterErrorReportSubmitter.java +++ b/src/io/flutter/FlutterErrorReportSubmitter.java @@ -53,7 +53,7 @@ public String getReportActionText() { } //@Override - public boolean submit(@NotNull IdeaLoggingEvent @NotNull [] events, + public boolean submit(@NotNull IdeaLoggingEvent[] events, @Nullable String additionalInfo, @NotNull Component parentComponent, @NotNull Consumer consumer) { diff --git a/src/io/flutter/actions/AttachDebuggerAction.java b/src/io/flutter/actions/AttachDebuggerAction.java index 3ce12c2c93..ef0b5fda2e 100644 --- a/src/io/flutter/actions/AttachDebuggerAction.java +++ b/src/io/flutter/actions/AttachDebuggerAction.java @@ -174,7 +174,7 @@ public static RunConfiguration findRunConfig(@NotNull Project project) { return count == 1 ? sdkConfig : null; } - private static void onAttachTermination(@NotNull Project project, @NotNull Consumer<@NotNull Project> runner) { + private static void onAttachTermination(@NotNull Project project, @NotNull Consumer runner) { final MessageBusConnection connection = project.getMessageBus().connect(); // Need an ExecutionListener to clean up project-scoped state when the Stop button is clicked. diff --git a/src/io/flutter/actions/FlutterRetargetAppAction.java b/src/io/flutter/actions/FlutterRetargetAppAction.java index 554bfa4075..851a624d15 100644 --- a/src/io/flutter/actions/FlutterRetargetAppAction.java +++ b/src/io/flutter/actions/FlutterRetargetAppAction.java @@ -33,7 +33,7 @@ public abstract class FlutterRetargetAppAction extends DumbAwareAction { FlutterRetargetAppAction(@NotNull String actionId, @Nullable String text, @Nullable String description, - @SuppressWarnings("SameParameterValue") @NotNull String @NotNull ... places) { + @SuppressWarnings("SameParameterValue") @NotNull String ... places) { super(text, description, null); myActionId = actionId; myPlaces.addAll(Arrays.asList(places)); diff --git a/src/io/flutter/bazel/WorkspaceCache.java b/src/io/flutter/bazel/WorkspaceCache.java index f7a8eca18c..64fdd18c04 100644 --- a/src/io/flutter/bazel/WorkspaceCache.java +++ b/src/io/flutter/bazel/WorkspaceCache.java @@ -38,7 +38,7 @@ public class WorkspaceCache { private boolean refreshScheduled = false; - private final @NotNull Set<@NotNull Runnable> subscribers = new LinkedHashSet<>(); + private final @NotNull Set subscribers = new LinkedHashSet<>(); private WorkspaceCache(@NotNull final Project project) { this.project = project; @@ -157,7 +157,7 @@ private void refresh() { notifyListeners(); } - private Set<@NotNull Runnable> getSubscribers() { + private Set getSubscribers() { synchronized (subscribers) { return ImmutableSet.copyOf(subscribers); } diff --git a/src/io/flutter/dart/FlutterRequestUtilities.java b/src/io/flutter/dart/FlutterRequestUtilities.java index 4a4a53ca21..23f5927655 100644 --- a/src/io/flutter/dart/FlutterRequestUtilities.java +++ b/src/io/flutter/dart/FlutterRequestUtilities.java @@ -47,7 +47,7 @@ private FlutterRequestUtilities() { * */ public static JsonObject generateAnalysisSetSubscriptions(@NotNull String id, - Map> subscriptions) { + Map> subscriptions) { final JsonObject params = new JsonObject(); params.add(SUBSCRIPTIONS, buildJsonElement(subscriptions)); return buildJsonObjectRequest(id, METHOD_FLUTTER_SET_SUBSCRIPTIONS, params); diff --git a/src/io/flutter/editor/FlutterPubspecNotificationProvider.java b/src/io/flutter/editor/FlutterPubspecNotificationProvider.java index 98e0a7e789..0503a04eaa 100644 --- a/src/io/flutter/editor/FlutterPubspecNotificationProvider.java +++ b/src/io/flutter/editor/FlutterPubspecNotificationProvider.java @@ -26,7 +26,7 @@ public final class FlutterPubspecNotificationProvider implements EditorNotificationProvider { @Nullable @Override - public Function collectNotificationData(@NotNull Project project, + public Function collectNotificationData(@NotNull Project project, @NotNull VirtualFile file) { // We only show this notification inside of local pubspec files. if (!PubRoot.isPubspec(file) || !file.isInLocalFileSystem()) { diff --git a/src/io/flutter/editor/NativeEditorNotificationProvider.java b/src/io/flutter/editor/NativeEditorNotificationProvider.java index b20b86c6d8..ee2870c493 100644 --- a/src/io/flutter/editor/NativeEditorNotificationProvider.java +++ b/src/io/flutter/editor/NativeEditorNotificationProvider.java @@ -34,7 +34,7 @@ public NativeEditorNotificationProvider(@NotNull Project project) { } @Override - public @Nullable Function collectNotificationData(@NotNull Project project, + public @Nullable Function collectNotificationData(@NotNull Project project, @NotNull VirtualFile file) { if (!file.isInLocalFileSystem() || !showNotification) { return null; diff --git a/src/io/flutter/inspections/SdkConfigurationNotificationProvider.java b/src/io/flutter/inspections/SdkConfigurationNotificationProvider.java index 6bdcd7ebbe..f41cd95ca6 100644 --- a/src/io/flutter/inspections/SdkConfigurationNotificationProvider.java +++ b/src/io/flutter/inspections/SdkConfigurationNotificationProvider.java @@ -36,7 +36,7 @@ public SdkConfigurationNotificationProvider(@NotNull Project project) { } @Override - public @Nullable Function collectNotificationData(@NotNull Project project, + public @Nullable Function collectNotificationData(@NotNull Project project, @NotNull VirtualFile file) { // If this is a Bazel configured Flutter project, exit immediately, neither of the notifications should be shown for this project type. if (FlutterModuleUtils.isFlutterBazelProject(project)) return null; diff --git a/src/io/flutter/jxbrowser/JxBrowserManager.java b/src/io/flutter/jxbrowser/JxBrowserManager.java index 4e43eff599..e9b9438edc 100644 --- a/src/io/flutter/jxbrowser/JxBrowserManager.java +++ b/src/io/flutter/jxbrowser/JxBrowserManager.java @@ -245,7 +245,7 @@ public void setUp(@NotNull String projectName) { downloadJxBrowser(fileNames); } - protected void downloadJxBrowser(@NotNull String @NotNull [] fileNames) { + protected void downloadJxBrowser(@NotNull String[] fileNames) { // The FileDownloader API is used by other plugins - e.g. // https://github.com/JetBrains/intellij-community/blob/b09f8151e0d189d70363266c3bb6edb5f6bfeca4/plugins/markdown/src/org/intellij/plugins/markdown/ui/preview/javafx/JavaFXInstallator.java#L48 final List fileDownloaders = new ArrayList<>(); @@ -309,7 +309,7 @@ public void run(@NotNull ProgressIndicator indicator) { } } - private void loadClasses(@NotNull String @NotNull [] fileNames) { + private void loadClasses(@NotNull String[] fileNames) { final List paths = new ArrayList<>(); final ClassLoader current = Thread.currentThread().getContextClassLoader(); try { diff --git a/src/io/flutter/project/FlutterIconProvider.java b/src/io/flutter/project/FlutterIconProvider.java index 4479be5df1..0ece7babb4 100644 --- a/src/io/flutter/project/FlutterIconProvider.java +++ b/src/io/flutter/project/FlutterIconProvider.java @@ -77,7 +77,7 @@ public Icon getIcon(@NotNull PsiElement element, @IconFlags int flags) { } @NotNull - private static Icon overlayIcons(@NotNull Icon @NotNull ... icons) { + private static Icon overlayIcons(@NotNull Icon ... icons) { final LayeredIcon result = new LayeredIcon(icons.length); for (int layer = 0; layer < icons.length; layer++) { diff --git a/src/io/flutter/pub/PubRoot.java b/src/io/flutter/pub/PubRoot.java index e395e7d5d8..5fe6a735b3 100644 --- a/src/io/flutter/pub/PubRoot.java +++ b/src/io/flutter/pub/PubRoot.java @@ -182,7 +182,7 @@ public String getRelativePath(@NotNull VirtualFile file) { return path.substring(root.length() + 1); } - private static final String @NotNull [] TEST_DIRS = new String[]{ // TODO 2022.1 + private static final String [] TEST_DIRS = new String[]{ // TODO 2022.1 "/test/", "/integration_test/", "/test_driver/", diff --git a/src/io/flutter/pub/PubRootCache.java b/src/io/flutter/pub/PubRootCache.java index 36bf832812..b40e34e1cd 100644 --- a/src/io/flutter/pub/PubRootCache.java +++ b/src/io/flutter/pub/PubRootCache.java @@ -60,7 +60,7 @@ public PubRoot getRoot(@Nullable VirtualFile file) { } @NotNull - public List<@NotNull PubRoot> getRoots(@NotNull Module module) { + public List getRoots(@NotNull Module module) { final List result = new ArrayList<>(); for (VirtualFile dir : OpenApiUtils.getContentRoots(module)) { diff --git a/src/io/flutter/pub/PubRoots.java b/src/io/flutter/pub/PubRoots.java index b6742e741d..bed81c5406 100644 --- a/src/io/flutter/pub/PubRoots.java +++ b/src/io/flutter/pub/PubRoots.java @@ -28,7 +28,7 @@ private PubRoots() { * (Based on the filesystem cache; doesn't refresh anything.) */ @NotNull - public static List<@NotNull PubRoot> forModule(@NotNull Module module) { + public static List forModule(@NotNull Module module) { final List result = new ArrayList<>(); if (module.isDisposed()) return result; @@ -47,7 +47,7 @@ private PubRoots() { * (Based on the filesystem cache; doesn't refresh anything.) */ @NotNull - public static List<@NotNull PubRoot> forProject(@NotNull Project project) { + public static List forProject(@NotNull Project project) { final List result = new ArrayList<>(); if (project.isDisposed()) return result; diff --git a/src/io/flutter/samples/FlutterSampleNotificationProvider.java b/src/io/flutter/samples/FlutterSampleNotificationProvider.java index 6f1a938fe7..70428c95d3 100644 --- a/src/io/flutter/samples/FlutterSampleNotificationProvider.java +++ b/src/io/flutter/samples/FlutterSampleNotificationProvider.java @@ -43,7 +43,7 @@ public FlutterSampleNotificationProvider(@NotNull Project project) { @Nullable @Override - public Function collectNotificationData(@NotNull Project project, + public Function collectNotificationData(@NotNull Project project, @NotNull VirtualFile file) { final FlutterSdk sdk = FlutterSdk.getFlutterSdk(project); if (sdk == null) { diff --git a/src/io/flutter/sdk/AndroidEmulatorManager.java b/src/io/flutter/sdk/AndroidEmulatorManager.java index 0707b29b99..a933366820 100644 --- a/src/io/flutter/sdk/AndroidEmulatorManager.java +++ b/src/io/flutter/sdk/AndroidEmulatorManager.java @@ -61,7 +61,7 @@ public void removeListener(@NotNull Runnable callback) { private CompletableFuture> inProgressRefresh; - public CompletableFuture<@NotNull List> refresh() { + public CompletableFuture> refresh() { // We don't need to refresh if one is in progress. synchronized (this) { if (inProgressRefresh != null) { @@ -98,7 +98,7 @@ public void removeListener(@NotNull Runnable callback) { return future; } - public @NotNull List<@NotNull AndroidEmulator> getCachedEmulators() { + public @NotNull List getCachedEmulators() { return cachedEmulators; } diff --git a/src/io/flutter/sdk/FlutterPluginsLibraryManager.java b/src/io/flutter/sdk/FlutterPluginsLibraryManager.java index 42bb8235d1..dcddd2bcc6 100644 --- a/src/io/flutter/sdk/FlutterPluginsLibraryManager.java +++ b/src/io/flutter/sdk/FlutterPluginsLibraryManager.java @@ -134,7 +134,7 @@ private void updateFlutterPluginsImpl() { .submit(AppExecutorUtil.getAppExecutorService()); } - private static @NotNull Set<@NotNull String> getFlutterPluginPaths(@NotNull List<@NotNull PubRoot> roots) { + private static @NotNull Set getFlutterPluginPaths(@NotNull List roots) { final Set paths = new HashSet<>(); for (PubRoot pubRoot : roots) { diff --git a/src/io/flutter/sdk/FlutterSdk.java b/src/io/flutter/sdk/FlutterSdk.java index 7a539e4f5d..54e672e4e0 100644 --- a/src/io/flutter/sdk/FlutterSdk.java +++ b/src/io/flutter/sdk/FlutterSdk.java @@ -582,7 +582,7 @@ public FlutterSdkChannel queryFlutterChannel(boolean useCachedValue) { @NotNull @NonNls - private static final String @NotNull [] PLATFORMS = + private static final String[] PLATFORMS = new String[]{"enable-android", "enable-ios", "enable-web", "enable-linux-desktop", "enable-macos-desktop", "enable-windows-desktop"}; @NotNull diff --git a/src/io/flutter/utils/AndroidLocationProvider.java b/src/io/flutter/utils/AndroidLocationProvider.java index ce064d0fd9..0d6949a717 100644 --- a/src/io/flutter/utils/AndroidLocationProvider.java +++ b/src/io/flutter/utils/AndroidLocationProvider.java @@ -23,10 +23,14 @@ public class AndroidLocationProvider implements BuildModelContext.ResolvedConfig @Nullable @Override public VirtualFile getGradleBuildFile(@NotNull Module module) { - GradleModuleModel moduleModel = GradleProjectSystemUtil.getGradleModuleModel(module); - if (moduleModel != null) { - return moduleModel.getBuildFile(); - } + // TODO(helin24): Delete this code (and potentially related code) if commenting out has no negative impact on Android editing. + // I believe this is to make gradle files show up nicely when a flutter project is opened, but this functionality already does not work + // and is not needed if we are recommending users edit Android files in a separate project window. + + //GradleModuleModel moduleModel = GradleProjectSystemUtil.getGradleModuleModel(module); + //if (moduleModel != null) { + // return moduleModel.getBuildFile(); + //} return null; } diff --git a/src/io/flutter/utils/FlutterModuleUtils.java b/src/io/flutter/utils/FlutterModuleUtils.java index 0ca8ae764e..c8d9af2b9e 100644 --- a/src/io/flutter/utils/FlutterModuleUtils.java +++ b/src/io/flutter/utils/FlutterModuleUtils.java @@ -201,7 +201,7 @@ private static VirtualFile findPreferedXcodeMetadataFile(@Nullable VirtualFile i } - public static @NotNull Module @NotNull [] getModules(@NotNull Project project) { + public static @NotNull Module[] getModules(@NotNull Project project) { // A disposed project has no modules. if (project.isDisposed()) return Module.EMPTY_ARRAY; diff --git a/src/io/flutter/utils/OpenApiUtils.java b/src/io/flutter/utils/OpenApiUtils.java index f7007c2e7c..69150943a6 100644 --- a/src/io/flutter/utils/OpenApiUtils.java +++ b/src/io/flutter/utils/OpenApiUtils.java @@ -23,7 +23,7 @@ public class OpenApiUtils { - public static @NotNull VirtualFile @NotNull [] getContentRoots(@NotNull Module module) { + public static @NotNull VirtualFile[] getContentRoots(@NotNull Module module) { var moduleRootManager = ModuleRootManager.getInstance(module); return moduleRootManager == null ? VirtualFile.EMPTY_ARRAY : moduleRootManager.getContentRoots(); } @@ -33,7 +33,7 @@ public class OpenApiUtils { return registrar == null ? null : registrar.getLibraryTable(project); } - public static @NotNull Module @NotNull [] getModules(@NotNull Project project) { + public static @NotNull Module[] getModules(@NotNull Project project) { var modules = ModuleManager.getInstance(project).getModules(); return modules == null ? Module.EMPTY_ARRAY : modules; } diff --git a/src/io/flutter/view/EmbeddedBrowser.java b/src/io/flutter/view/EmbeddedBrowser.java index 507c25190e..0185541423 100644 --- a/src/io/flutter/view/EmbeddedBrowser.java +++ b/src/io/flutter/view/EmbeddedBrowser.java @@ -50,7 +50,7 @@ static public class BrowserTab { public static final String ANALYTICS_CATEGORY = "embedded-browser"; - protected final Map<@NotNull String, Map<@NotNull String, @NotNull BrowserTab>> windows = new HashMap<>(); + protected final Map> windows = new HashMap<>(); public abstract @NotNull Logger logger(); diff --git a/src/io/flutter/vmService/DartVmServiceDebugProcess.java b/src/io/flutter/vmService/DartVmServiceDebugProcess.java index 5179a63db8..2debd18074 100644 --- a/src/io/flutter/vmService/DartVmServiceDebugProcess.java +++ b/src/io/flutter/vmService/DartVmServiceDebugProcess.java @@ -279,7 +279,7 @@ public XDebuggerEditorsProvider getEditorsProvider() { @Override @NotNull - public XBreakpointHandler @NotNull [] getBreakpointHandlers() { + public XBreakpointHandler [] getBreakpointHandlers() { return myBreakpointHandlers; } diff --git a/src/io/flutter/vmService/frame/DartVmServiceValue.java b/src/io/flutter/vmService/frame/DartVmServiceValue.java index 8c2666eeb7..c8506ef326 100644 --- a/src/io/flutter/vmService/frame/DartVmServiceValue.java +++ b/src/io/flutter/vmService/frame/DartVmServiceValue.java @@ -426,7 +426,7 @@ private void addListChildren(int offset, @NotNull XCompositeNode node, @NotNull if (instance.getBytes() != null) { // true for typed data //noinspection ConstantConditions - byte @NotNull [] bytes = Base64.getDecoder().decode(instance.getBytes()); + byte[] bytes = Base64.getDecoder().decode(instance.getBytes()); TypedDataList data = getTypedDataList(bytes); XValueChildrenList childrenList = new XValueChildrenList(data.size()); for (int i = 0; i < data.size(); i++) { @@ -469,7 +469,7 @@ private InstanceRef instanceRefForString(@NotNull String value) { return new InstanceRef(ref); } - private TypedDataList getTypedDataList(byte @NotNull [] bytes) { + private TypedDataList getTypedDataList(byte[] bytes) { ByteBuffer buffer = ByteBuffer.wrap(bytes); //noinspection ConstantConditions return switch (myInstanceRef.getKind()) {