[RDCT] RDCT-484: Mark debugger actions properly (Frontend / Backend / Disabled)

GitOrigin-RevId: 29cbc3a364791ce932e63c16135bfa40a63d4fa2
This commit is contained in:
Vyacheslav Moklev
2023-08-31 16:40:42 +00:00
committed by intellij-monorepo-bot
parent 9c2ae69ef4
commit e22af085fa
12 changed files with 24 additions and 12 deletions
@@ -7,6 +7,7 @@ import com.intellij.debugger.ui.tree.FieldDescriptor;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.psi.PsiType;
@@ -25,7 +26,7 @@ import org.jetbrains.annotations.NotNull;
import java.util.List;
@ApiStatus.Experimental
public class ShowCollectionHistoryAction extends XFetchValueActionBase {
public class ShowCollectionHistoryAction extends XFetchValueActionBase implements ActionRemoteBehaviorSpecification.Disabled {
@Override
public void update(@NotNull AnActionEvent e) {
if (!Registry.is("debugger.collection.watchpoints.enabled")) {
@@ -17,6 +17,7 @@ import com.intellij.debugger.ui.impl.watch.NodeDescriptorProvider;
import com.intellij.ide.highlighter.JavaClassFileType;
import com.intellij.ide.highlighter.JavaFileType;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
@@ -33,7 +34,7 @@ import com.intellij.xdebugger.impl.ui.tree.actions.XDebuggerTreeActionBase;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class ToggleFieldBreakpointAction extends AnAction {
public class ToggleFieldBreakpointAction extends AnAction implements ActionRemoteBehaviorSpecification.Disabled {
@Override
public void actionPerformed(@NotNull AnActionEvent e) {
@@ -10,6 +10,7 @@ import com.intellij.debugger.ui.breakpoints.MethodBreakpoint;
import com.intellij.ide.highlighter.JavaClassFileType;
import com.intellij.ide.highlighter.JavaFileType;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.fileEditor.FileEditor;
@@ -26,7 +27,7 @@ import com.intellij.util.text.CharArrayUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
public class ToggleMethodBreakpointAction extends AnAction {
public class ToggleMethodBreakpointAction extends AnAction implements ActionRemoteBehaviorSpecification.Disabled {
@Override
public void update(@NotNull AnActionEvent event) {
@@ -19,6 +19,7 @@ import com.intellij.execution.ui.RunContentDescriptor;
import com.intellij.execution.ui.layout.impl.RunnerContentUi;
import com.intellij.icons.AllIcons;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.compiler.JavaCompilerBundle;
@@ -282,7 +283,7 @@ public class DefaultJavaProgramRunner implements JvmPatchableProgramRunner<Runne
protected abstract void perform(AnActionEvent e, ProcessProxy proxy, ProcessHandler handler);
}
public static final class ControlBreakAction extends ProxyBasedAction {
public static final class ControlBreakAction extends ProxyBasedAction implements ActionRemoteBehaviorSpecification.Disabled {
private final ExecutorService myExecutor = AppExecutorUtil.createBoundedApplicationPoolExecutor("Thread Dumper", 1);
public ControlBreakAction() {
@@ -9,13 +9,14 @@ import com.intellij.ide.IdeBundle;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.Presentation;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.util.registry.Registry;
import com.intellij.openapi.util.registry.RegistryManager;
import com.intellij.openapi.util.text.TextWithMnemonic;
import com.intellij.ui.content.Content;
import org.jetbrains.annotations.NotNull;
public final class CloseViewAction extends BaseViewAction {
public final class CloseViewAction extends BaseViewAction implements ActionRemoteBehaviorSpecification.Frontend {
@Override
public @NotNull ActionUpdateThread getActionUpdateThread() {
@@ -5,11 +5,12 @@ package com.intellij.execution.ui.layout.actions;
import com.intellij.execution.ui.actions.BaseViewAction;
import com.intellij.execution.ui.layout.ViewContext;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.ui.content.Content;
import com.intellij.ui.content.ContentManager;
import org.jetbrains.annotations.NotNull;
public abstract class CloseViewsActionBase extends BaseViewAction {
public abstract class CloseViewsActionBase extends BaseViewAction implements ActionRemoteBehaviorSpecification.Frontend {
@Override
protected void update(AnActionEvent e, ViewContext context, Content[] content) {
@@ -5,12 +5,13 @@ import com.intellij.execution.ui.layout.impl.RunnerContentUi;
import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.project.DumbAwareToggleAction;
import org.jetbrains.annotations.NotNull;
import java.util.Objects;
final class ToggleShowTabLabelsAction extends DumbAwareToggleAction {
final class ToggleShowTabLabelsAction extends DumbAwareToggleAction implements ActionRemoteBehaviorSpecification.Frontend {
@Override
public @NotNull ActionUpdateThread getActionUpdateThread() {
@@ -16,9 +16,10 @@
package com.intellij.xdebugger.impl.actions;
import com.intellij.execution.ui.actions.AbstractFocusOnAction;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.xdebugger.impl.ui.XDebuggerUIConstants;
public class FocusOnBreakpointAction extends AbstractFocusOnAction {
public class FocusOnBreakpointAction extends AbstractFocusOnAction implements ActionRemoteBehaviorSpecification.Frontend {
public FocusOnBreakpointAction() {
super(XDebuggerUIConstants.LAYOUT_VIEW_BREAKPOINT_CONDITION);
}
@@ -3,13 +3,14 @@ package com.intellij.xdebugger.impl.actions;
import com.intellij.icons.AllIcons;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.xdebugger.XDebugSession;
import com.intellij.xdebugger.XDebuggerBundle;
import com.intellij.xdebugger.impl.XDebuggerUtilImpl;
import com.intellij.xdebugger.impl.settings.XDebuggerSettingManagerImpl;
import org.jetbrains.annotations.NotNull;
final class ShowLibraryFramesAction extends ToggleAction {
final class ShowLibraryFramesAction extends ToggleAction implements ActionRemoteBehaviorSpecification.Disabled {
// we should remember initial answer "isLibraryFrameFilterSupported" because on stop no debugger process, but UI is still shown
// - we should avoid "jumping" (visible (start) - invisible (stop) - visible (start again))
private static final String IS_LIBRARY_FRAME_FILTER_SUPPORTED = "isLibraryFrameFilterSupported";
@@ -6,6 +6,7 @@ import com.intellij.ide.util.PropertiesComponent;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.project.DumbAwareToggleAction;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.Key;
@@ -29,7 +30,7 @@ import javax.swing.*;
* <p>The initial visibility is set by {@link #markAsEvaluateExpressionField(JComponent)}
* Use {@link #isEvaluateExpressionFieldEnabled()} to get current state of the option.</p>
*/
public class XToggleEvaluateExpressionFieldAction extends DumbAwareToggleAction {
public class XToggleEvaluateExpressionFieldAction extends DumbAwareToggleAction implements ActionRemoteBehaviorSpecification.Frontend {
private static final Key<String> EVALUATE_EXPRESSION_FIELD = Key.create("Evaluate Expression Field");
private static final String PROP_KEY = "XToggleEvaluateFieldAction.EvaluateExpressionField.enabled";
@@ -5,6 +5,7 @@ import com.intellij.ide.ui.UISettings;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.ToggleAction;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.editor.EditorFactory;
import com.intellij.openapi.editor.ex.EditorSettingsExternalizable;
import com.intellij.openapi.project.DumbAware;
@@ -14,7 +15,7 @@ import org.jetbrains.annotations.NotNull;
/**
* @author Konstantin Bulenkov
*/
public class ShowBreakpointsOverLineNumbersAction extends ToggleAction implements DumbAware {
public class ShowBreakpointsOverLineNumbersAction extends ToggleAction implements DumbAware, ActionRemoteBehaviorSpecification.Frontend {
@Override
public boolean isSelected(@NotNull AnActionEvent e) {
return isSelected();
@@ -4,13 +4,14 @@ package com.intellij.xdebugger.impl.ui.tree.actions;
import com.intellij.openapi.actionSystem.ActionUpdateThread;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.actionSystem.ToggleAction;
import com.intellij.openapi.actionSystem.remoting.ActionRemoteBehaviorSpecification;
import com.intellij.openapi.project.DumbAware;
import com.intellij.xdebugger.XDebugSession;
import com.intellij.xdebugger.impl.XDebuggerUtilImpl;
import com.intellij.xdebugger.impl.settings.XDebuggerSettingManagerImpl;
import org.jetbrains.annotations.NotNull;
public class SortValuesToggleAction extends ToggleAction implements DumbAware {
public class SortValuesToggleAction extends ToggleAction implements DumbAware, ActionRemoteBehaviorSpecification.Frontend {
@Override
public void update(@NotNull AnActionEvent e) {