[fleet] node attach - override backend methods that are not relevant for fleet

GitOrigin-RevId: eaf7a07a48f991709012e31bdeb24de4363d5e02
This commit is contained in:
Anton Lobov
2023-07-25 17:28:55 +02:00
committed by intellij-monorepo-bot
parent a7f0b33240
commit 8b18cbc597
5 changed files with 26 additions and 5 deletions

View File

@@ -7,6 +7,9 @@ import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.fileEditor.FileEditor;
import com.intellij.openapi.fileEditor.FileEditorManager;
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.PsiElement;
@@ -24,10 +27,18 @@ import java.util.Comparator;
import java.util.List;
public abstract class XDebuggerUtil {
public static XDebuggerUtil getInstance() {
return ApplicationManager.getApplication().getService(XDebuggerUtil.class);
}
@Nullable
public FileEditor getSelectedEditor(Project project, VirtualFile file) {
return FileEditorManager.getInstance(project).getSelectedEditor(file);
}
public abstract Editor openTextEditor(@NotNull OpenFileDescriptor descriptor);
public abstract XLineBreakpointType<?>[] getLineBreakpointTypes();
public void toggleLineBreakpoint(@NotNull Project project, @NotNull VirtualFile file, int line) {

View File

@@ -14,6 +14,7 @@ import com.intellij.util.concurrency.annotations.RequiresBackgroundThread
import com.intellij.util.concurrency.annotations.RequiresEdt
import com.intellij.util.concurrency.annotations.RequiresReadLock
import com.intellij.util.ui.EDT
import com.intellij.xdebugger.XDebuggerUtil
import com.intellij.xdebugger.XSourcePosition
import com.intellij.xdebugger.impl.settings.XDebuggerSettingManagerImpl
import kotlinx.coroutines.CoroutineScope
@@ -86,7 +87,7 @@ internal class ExecutionPositionNavigator(
private fun navigateTo(openFileDescriptor: OpenFileDescriptor, navigationMode: ExecutionPositionNavigationMode) {
when (navigationMode) {
ExecutionPositionNavigationMode.OPEN -> {
openedEditor = XDebuggerUtilImpl.createEditor(openFileDescriptor)
openedEditor = XDebuggerUtil.getInstance().openTextEditor(openFileDescriptor)
}
ExecutionPositionNavigationMode.SCROLL -> {
val fileEditorManager = FileEditorManager.getInstance(openFileDescriptor.project)

View File

@@ -46,12 +46,14 @@ import com.intellij.xdebugger.*;
import com.intellij.xdebugger.breakpoints.*;
import com.intellij.xdebugger.breakpoints.ui.XBreakpointGroupingRule;
import com.intellij.xdebugger.evaluation.EvaluationMode;
import com.intellij.xdebugger.evaluation.XDebuggerEvaluator;
import com.intellij.xdebugger.frame.XExecutionStack;
import com.intellij.xdebugger.frame.XStackFrame;
import com.intellij.xdebugger.frame.XSuspendContext;
import com.intellij.xdebugger.frame.XValueContainer;
import com.intellij.xdebugger.impl.breakpoints.*;
import com.intellij.xdebugger.impl.breakpoints.XBreakpointBase;
import com.intellij.xdebugger.impl.breakpoints.XBreakpointManagerImpl;
import com.intellij.xdebugger.impl.breakpoints.XBreakpointUtil;
import com.intellij.xdebugger.impl.breakpoints.XExpressionImpl;
import com.intellij.xdebugger.impl.breakpoints.ui.grouping.XBreakpointFileGroupingRule;
import com.intellij.xdebugger.impl.evaluate.quick.common.ValueLookupManager;
import com.intellij.xdebugger.impl.frame.XStackFrameContainerEx;
@@ -534,7 +536,13 @@ public class XDebuggerUtilImpl extends XDebuggerUtil {
ValueLookupManager.DISABLE_VALUE_LOOKUP.set(editor, Boolean.TRUE);
}
@Override
@Nullable
public Editor openTextEditor(@NotNull OpenFileDescriptor descriptor) {
return createEditor(descriptor);
}
public static Editor createEditor(@NotNull OpenFileDescriptor descriptor) {
if (descriptor.canNavigate()) {
FileEditorManagerEx fileEditorManager = FileEditorManagerEx.getInstanceEx(descriptor.getProject());

View File

@@ -90,7 +90,7 @@ public final class XDebuggerInlayUtil {
private static void createInlayInt(@NotNull XDebugSession session, InlineDebugRenderer renderer) {
EDT.assertIsEdt();
XSourcePosition position = renderer.getPosition();
FileEditor editor = FileEditorManager.getInstance(session.getProject()).getSelectedEditor(position.getFile());
FileEditor editor = XDebuggerUtil.getInstance().getSelectedEditor(session.getProject(), position.getFile());
if (editor instanceof TextEditor) {
Editor e = ((TextEditor)editor).getEditor();
int line = position.getLine();

View File

@@ -28,6 +28,7 @@ import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.pom.Navigatable;
import com.intellij.ui.AppUIUtil;
import com.intellij.util.messages.MessageBusConnection;
import com.intellij.xdebugger.XDebuggerUtil;
import com.intellij.xdebugger.XSourcePosition;
import com.intellij.xdebugger.impl.XDebuggerUtilImpl;
import com.intellij.xdebugger.impl.settings.XDebuggerSettingManagerImpl;
@@ -164,7 +165,7 @@ public class ExecutionPointHighlighter {
}
}
else {
myEditor = XDebuggerUtilImpl.createEditor(myOpenFileDescriptor);
myEditor = XDebuggerUtil.getInstance().openTextEditor(myOpenFileDescriptor);
}
}
if (myEditor != null) {