a quicker way to edit current run configuration

GitOrigin-RevId: 60b92c9cd458b489247eabba7fe14820f3288fe5
This commit is contained in:
Konstantin Bulenkov
2019-10-01 22:32:28 +00:00
committed by intellij-monorepo-bot
parent f23e59d910
commit 4b5e6f7635
2 changed files with 24 additions and 1 deletions
@@ -3,11 +3,13 @@
package com.intellij.execution.actions;
import com.intellij.execution.*;
import com.intellij.execution.impl.EditConfigurationsDialog;
import com.intellij.execution.impl.RunManagerImpl;
import com.intellij.icons.AllIcons;
import com.intellij.ide.DataManager;
import com.intellij.idea.ActionsBundle;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.ex.ActionUtil;
import com.intellij.openapi.actionSystem.ex.ComboBoxAction;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.project.DumbAware;
@@ -136,6 +138,17 @@ public class RunConfigurationsComboBoxAction extends ComboBoxAction implements D
return d;
}
@Override
protected void doShiftClick() {
DataContext context = DataManager.getInstance().getDataContext(this);
final Project project = CommonDataKeys.PROJECT.getData(context);
if (project != null && !ActionUtil.isDumbMode(project)) {
new EditConfigurationsDialog(project).show();
return;
}
super.doShiftClick();
}
@Override
protected void fireActionPerformed(ActionEvent event) {
if (Boolean.TRUE.equals(presentation.getClientProperty(BUTTON_MODE))) {
@@ -23,6 +23,7 @@ import com.intellij.ui.UserActivityProviderComponent;
import com.intellij.ui.scale.JBUIScale;
import com.intellij.util.ui.*;
import com.intellij.util.ui.accessibility.ScreenReader;
import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -169,7 +170,11 @@ public abstract class ComboBoxAction extends AnAction implements CustomComponent
public void mousePressed(final MouseEvent e) {
if (SwingUtilities.isLeftMouseButton(e)) {
e.consume();
doClick();
if (e.isShiftDown()) {
doShiftClick();
} else {
doClick();
}
}
}
});
@@ -394,6 +399,11 @@ public abstract class ComboBoxAction extends AnAction implements CustomComponent
setSize(getPreferredSize());
repaint();
}
@ApiStatus.Experimental
protected void doShiftClick() {
doClick();
}
}
protected Condition<AnAction> getPreselectCondition() { return null; }