Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions flutter-idea/src/io/flutter/actions/DeviceSelectorAction.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
import com.intellij.openapi.project.ProjectManager;
import com.intellij.openapi.project.ProjectManagerListener;
import com.intellij.openapi.util.Condition;
import com.intellij.openapi.util.Key;
import com.intellij.openapi.util.SystemInfo;
import com.intellij.util.ModalityUiUtil;
import icons.FlutterIcons;
Expand Down Expand Up @@ -132,10 +133,10 @@ private void update(@NotNull Project project, @NotNull Presentation presentation
updateVisibility(project, presentation);
}

private static void updateVisibility(final Project project, final Presentation presentation) {
private static void updateVisibility(final Project project, final @NotNull Presentation presentation) {
final boolean visible = isSelectorVisible(project);

final JComponent component = (JComponent)presentation.getClientProperty("customComponent");
final JComponent component = presentation.getClientProperty(new Key<>("customComponent"));
if (component != null) {
component.setVisible(visible);
if (component.getParent() != null) {
Expand Down
25 changes: 16 additions & 9 deletions flutter-idea/src/io/flutter/run/LaunchState.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,10 @@
*/
package io.flutter.run;

import com.intellij.execution.*;
import com.intellij.execution.DefaultExecutionResult;
import com.intellij.execution.ExecutionException;
import com.intellij.execution.ExecutionResult;
import com.intellij.execution.Executor;
import com.intellij.execution.configurations.CommandLineState;
import com.intellij.execution.configurations.GeneralCommandLine;
import com.intellij.execution.configurations.RunProfile;
Expand All @@ -21,6 +24,7 @@
import com.intellij.execution.ui.ConsoleView;
import com.intellij.execution.ui.ConsoleViewContentType;
import com.intellij.execution.ui.RunContentDescriptor;
import com.intellij.execution.ui.RunContentManager;
import com.intellij.icons.AllIcons;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.Separator;
Expand Down Expand Up @@ -389,7 +393,7 @@ protected RunContentDescriptor doExecute(@NotNull RunProfileState state, @NotNul

// See if we should issue a hot-reload.
final List<RunContentDescriptor> runningProcesses =
ExecutionManager.getInstance(env.getProject()).getContentManager().getAllDescriptors();
RunContentManager.getInstance(env.getProject()).getAllDescriptors();

final ProcessHandler process = getRunningAppProcess(launchState.runConfig);
if (process != null) {
Expand Down Expand Up @@ -446,15 +450,18 @@ private String getSelectedDeviceId(@NotNull Project project) {
* Returns the currently running app for the given RunConfig, if any.
*/
@Nullable
public static ProcessHandler getRunningAppProcess(RunConfig config) {
public static ProcessHandler getRunningAppProcess(@NotNull RunConfig config) {
final Project project = config.getProject();
final List<RunContentDescriptor> runningProcesses =
ExecutionManager.getInstance(project).getContentManager().getAllDescriptors();
if (project != null) {
final List<RunContentDescriptor> runningProcesses =
RunContentManager.getInstance(project).getAllDescriptors();

for (RunContentDescriptor descriptor : runningProcesses) {
final ProcessHandler process = descriptor.getProcessHandler();
if (process != null && !process.isProcessTerminated() && process.getUserData(FLUTTER_RUN_CONFIG_KEY) == config) {
return process;
for (RunContentDescriptor descriptor : runningProcesses) {
if (descriptor == null) continue;
final ProcessHandler process = descriptor.getProcessHandler();
if (process != null && !process.isProcessTerminated() && process.getUserData(FLUTTER_RUN_CONFIG_KEY) == config) {
return process;
}
}
}

Expand Down
6 changes: 3 additions & 3 deletions flutter-idea/src/io/flutter/run/daemon/FlutterApp.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import com.google.common.base.Stopwatch;
import com.google.gson.JsonObject;
import com.intellij.execution.ExecutionException;
import com.intellij.execution.ExecutionManager;
import com.intellij.execution.configurations.GeneralCommandLine;
import com.intellij.execution.process.ProcessAdapter;
import com.intellij.execution.process.ProcessEvent;
Expand All @@ -17,6 +16,7 @@
import com.intellij.execution.ui.ConsoleView;
import com.intellij.execution.ui.ConsoleViewContentType;
import com.intellij.execution.ui.RunContentDescriptor;
import com.intellij.execution.ui.RunContentManager;
import com.intellij.history.LocalHistory;
import com.intellij.openapi.Disposable;
import com.intellij.openapi.diagnostic.Logger;
Expand Down Expand Up @@ -187,7 +187,7 @@ public static FlutterApp fromProcess(@NotNull ProcessHandler process) {
public static List<FlutterApp> allFromProjectProcess(@NotNull Project project) {
final List<FlutterApp> allRunningApps = new ArrayList<>();
final List<RunContentDescriptor> runningProcesses =
ExecutionManager.getInstance(project).getContentManager().getAllDescriptors();
RunContentManager.getInstance(project).getAllDescriptors();
for (RunContentDescriptor descriptor : runningProcesses) {
final ProcessHandler process = descriptor.getProcessHandler();
if (process != null) {
Expand Down Expand Up @@ -469,7 +469,7 @@ public StreamSubscription<Boolean> hasServiceExtension(String name, Consumer<Boo
}
return getVMServiceManager().hasServiceExtension(name, onData);
}

public void setConsole(@Nullable ConsoleView console) {
myConsole = console;
}
Expand Down
8 changes: 4 additions & 4 deletions flutter-idea/src/io/flutter/sdk/FlutterSdk.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.vfs.VirtualFileManager;
import com.intellij.util.ui.EdtInvocationManager;
import com.intellij.util.ui.EDT;
import com.jetbrains.lang.dart.sdk.DartSdk;
import git4idea.config.GitExecutableManager;
import io.flutter.FlutterBundle;
Expand Down Expand Up @@ -159,7 +159,7 @@ private static FlutterSdk saveSdkInCache(@NotNull VirtualFile home) {
@Nullable
private static Library getDartSdkLibrary(@NotNull Project project) {
LibraryTablesRegistrar registrar = LibraryTablesRegistrar.getInstance();
if (registrar == null) return null;
if (registrar == null) return null;
final LibraryTable libraryTable = registrar.getLibraryTable(project);
for (Library lib : libraryTable.getLibraries()) {
if (lib != null && "Dart SDK".equals(lib.getName())) {
Expand Down Expand Up @@ -458,7 +458,7 @@ public PubRoot createFiles(@NotNull VirtualFile baseDir, @Nullable Module module
return null;
}

if (EdtInvocationManager.getInstance().isEventDispatchThread()) {
if (EDT.isCurrentThreadEdt()) {
VfsUtil.markDirtyAndRefresh(false, true, true, baseDir); // Need this for AS.
}
else {
Expand Down Expand Up @@ -670,7 +670,7 @@ public String queryFlutterConfig(String key, boolean useCachedValue) {
}

final JsonObject obj = elem.getAsJsonObject();
if (obj == null) return null;
if (obj == null) return null;

for (String jsonKey : JsonUtils.getKeySet(obj)) {
final JsonElement element = obj.get(jsonKey);
Expand Down