introduce ActionUiKind: cleanup

GitOrigin-RevId: 3064d1b5f9cdd83c3b9d0b22d0dd489d0213fba9
This commit is contained in:
Gregory.Shrago
2024-08-22 06:03:17 +04:00
committed by intellij-monorepo-bot
parent b592eca4fd
commit f678ef232d
9 changed files with 29 additions and 29 deletions

View File

@@ -7,10 +7,7 @@ import com.intellij.execution.RunnerAndConfigurationSettings;
import com.intellij.execution.configurations.RunConfiguration;
import com.intellij.execution.junit.JUnitConfiguration;
import com.intellij.execution.junit.codeInsight.JUnit5TestFrameworkSetupUtil;
import com.intellij.openapi.actionSystem.ActionGroup;
import com.intellij.openapi.actionSystem.ActionPlaces;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.impl.PresentationFactory;
import com.intellij.openapi.actionSystem.impl.Utils;
import com.intellij.openapi.application.impl.NonBlockingReadActionImpl;
@@ -188,7 +185,7 @@ public class NestedClassLineMarkerTest extends LightJavaCodeInsightFixtureTestCa
assertNotNull(group);
PresentationFactory factory = new PresentationFactory();
List<AnAction> list = ContainerUtil.findAll(Utils.expandActionGroup(
group, factory, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN), action -> {
group, factory, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN, ActionUiKind.NONE), action -> {
String text = factory.getPresentation(action).getText();
return text != null && text.startsWith("Run '") && text.endsWith("'");
});

View File

@@ -213,7 +213,7 @@ public class TestRunLineMarkerTest extends LineMarkerTestCase {
AnActionEvent event = TestActionEvent.createTestEvent();
PresentationFactory factory = new PresentationFactory();
List<AnAction> list = ContainerUtil.findAll(Utils.expandActionGroup(
group, factory, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN), action -> {
group, factory, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN, ActionUiKind.NONE), action -> {
String text = factory.getPresentation(action).getText();
return text != null && text.startsWith("Run '") && text.endsWith("'");
});

View File

@@ -2,6 +2,7 @@
package com.intellij.java.refactoring
import com.intellij.openapi.actionSystem.ActionPlaces
import com.intellij.openapi.actionSystem.ActionUiKind
import com.intellij.openapi.actionSystem.AnAction
import com.intellij.openapi.actionSystem.DefaultActionGroup
import com.intellij.openapi.actionSystem.impl.PresentationFactory
@@ -9,6 +10,8 @@ import com.intellij.openapi.actionSystem.impl.Utils
import com.intellij.openapi.editor.ex.EditorEx
import com.intellij.refactoring.actions.*
import com.intellij.testFramework.LightJavaCodeInsightTestCase
import com.intellij.testFramework.LightJavaCodeInsightTestCase.assertFalse
import com.intellij.testFramework.LightJavaCodeInsightTestCase.assertTrue
import org.jetbrains.annotations.NonNls
class RefactorThisTest: LightJavaCodeInsightTestCase() {
@@ -189,7 +192,9 @@ class RefactorThisTest: LightJavaCodeInsightTestCase() {
val group = DefaultActionGroup()
val dataContext = (editor as EditorEx).dataContext
action.fillActions(project, group, dataContext)
return Utils.expandActionGroup(group, PresentationFactory(), dataContext, ActionPlaces.REFACTORING_QUICKLIST)
return Utils.expandActionGroup(
group, PresentationFactory(), dataContext,
ActionPlaces.REFACTORING_QUICKLIST, ActionUiKind.POPUP)
}
}

View File

@@ -298,17 +298,6 @@ object Utils {
deferred.await()
}
@Deprecated("Use [expandActionGroup(group, presentationFactory, context, place, uiKind)] instead")
@JvmStatic
fun expandActionGroup(group: ActionGroup,
presentationFactory: PresentationFactory,
context: DataContext,
place: String): List<AnAction> {
return expandActionGroup(
group, presentationFactory, context, place,
if (ActionPlaces.isPopupPlace(place)) ActionUiKind.POPUP else ActionUiKind.NONE)
}
/**
* The preferred way to synchronously expand a group while pumping EDT intended for synchronous clients
*/

View File

@@ -3,7 +3,10 @@ package com.intellij.openapi.wm.impl.welcomeScreen.learnIde
import com.intellij.icons.AllIcons
import com.intellij.ide.IdeBundle
import com.intellij.ide.actions.*
import com.intellij.ide.actions.HelpTopicsAction
import com.intellij.ide.actions.JetBrainsTvAction
import com.intellij.ide.actions.OnlineDocAction
import com.intellij.ide.actions.WhatsNewAction
import com.intellij.openapi.actionSystem.*
import com.intellij.openapi.actionSystem.ex.ActionUtil
import com.intellij.openapi.actionSystem.impl.PresentationFactory
@@ -15,6 +18,8 @@ import java.awt.BorderLayout
import java.awt.Component
import java.awt.Dimension
import javax.swing.*
import javax.swing.Box.Filler.LEFT_ALIGNMENT
import javax.swing.JPanel.LEFT_ALIGNMENT
import javax.swing.plaf.ComponentUI
class HelpAndResourcesPanel : JPanel() {
@@ -56,7 +61,8 @@ class HelpAndResourcesPanel : JPanel() {
private fun addHelpActions() {
val presentationFactory = PresentationFactory()
val helpActionsGroup = ActionManager.getInstance().getAction(IdeActions.GROUP_WELCOME_SCREEN_LEARN_IDE) as ActionGroup
val helpActions = Utils.expandActionGroup(helpActionsGroup, presentationFactory, DataContext.EMPTY_CONTEXT, ActionPlaces.WELCOME_SCREEN)
val helpActions = Utils.expandActionGroup(helpActionsGroup, presentationFactory, DataContext.EMPTY_CONTEXT,
ActionPlaces.WELCOME_SCREEN, ActionUiKind.NONE)
helpActions.forEach {
val presentation = presentationFactory.getPresentation(it)
if (!presentation.isEnabledAndVisible) {

View File

@@ -82,7 +82,7 @@ class ActionUpdaterTest {
group.add(DefaultActionGroup(DefaultActionGroup(
newAction(ActionUpdateThread.BGT) { it.presentation.isEnabledAndVisible = false })))
val presentations = PresentationFactory()
val actions = Utils.expandActionGroup(group, presentations, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN)
val actions = expandActionGroup(group, presentations)
assertEmpty(actions)
assertFalse(presentations.getPresentation(group).isEnabled)
}
@@ -439,7 +439,8 @@ class ActionUpdaterTest {
private fun expandActionGroup(actionGroup: ActionGroup,
presentationFactory: PresentationFactory = PresentationFactory()): List<AnAction?> {
return Utils.expandActionGroup(actionGroup, presentationFactory, DataContext.EMPTY_CONTEXT, ActionPlaces.UNKNOWN)
return Utils.expandActionGroup(actionGroup, presentationFactory, DataContext.EMPTY_CONTEXT,
ActionPlaces.UNKNOWN, ActionUiKind.NONE)
}
private fun newAction(updateThread: ActionUpdateThread, update: (AnActionEvent) -> Unit): AnAction =

View File

@@ -18,6 +18,7 @@ import com.intellij.execution.testframework.JavaTestLocator
import com.intellij.execution.testframework.sm.runner.SMTestProxy
import com.intellij.openapi.actionSystem.ActionGroup
import com.intellij.openapi.actionSystem.ActionPlaces
import com.intellij.openapi.actionSystem.ActionUiKind
import com.intellij.openapi.actionSystem.impl.PresentationFactory
import com.intellij.openapi.actionSystem.impl.Utils
import com.intellij.openapi.application.impl.NonBlockingReadActionImpl
@@ -29,6 +30,7 @@ import com.intellij.psi.search.GlobalSearchScope
import com.intellij.psi.util.PsiTreeUtil
import com.intellij.testFramework.TestActionEvent
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase.*
import com.intellij.util.ThreeState
import org.jetbrains.kotlin.asJava.toLightMethods
import org.jetbrains.kotlin.idea.junit.JunitKotlinTestFrameworkProvider
@@ -226,7 +228,7 @@ fun main(args: Array<String>) {}
val presentations = PresentationFactory()
val dataContext = TestActionEvent.createTestEvent().dataContext
val children = Utils.expandActionGroup(
group, presentations, dataContext, ActionPlaces.EDITOR_GUTTER_POPUP)
group, presentations, dataContext, ActionPlaces.EDITOR_GUTTER_POPUP, ActionUiKind.POPUP)
val list = children.filter {
presentations.getPresentation(it).text.run {
startsWith("Run '") && endsWith("'")

View File

@@ -1,10 +1,7 @@
package com.jetbrains.performancePlugin.commands;
import com.intellij.ide.DataManager;
import com.intellij.openapi.actionSystem.ActionGroup;
import com.intellij.openapi.actionSystem.ActionManager;
import com.intellij.openapi.actionSystem.AnAction;
import com.intellij.openapi.actionSystem.DataContext;
import com.intellij.openapi.actionSystem.*;
import com.intellij.openapi.actionSystem.impl.PresentationFactory;
import com.intellij.openapi.actionSystem.impl.Utils;
import com.intellij.openapi.ui.playback.PlaybackContext;
@@ -40,7 +37,9 @@ abstract public class ExpandMenuCommand extends AbstractCallbackBasedCommand {
if (!(action instanceof ActionGroup group)) return JBIterable.empty();
String groupSpanName = ObjectUtils.coalesce(actionManager.getId(group), group.getTemplateText(), group.getClass().getName());
Span groupSpan = PerformanceTestSpan.TRACER.spanBuilder(groupSpanName).setParent(Context.current().with(totalSpan)).startSpan();
List<AnAction> actions = Utils.expandActionGroup(group, new PresentationFactory(), dataContext, getPlace());
List<AnAction> actions = Utils.expandActionGroup(
group, new PresentationFactory(), dataContext, getPlace(),
ActionPlaces.isPopupPlace(getPlace()) ? ActionUiKind.POPUP : ActionUiKind.NONE);
groupSpan.end();
return actions;
}).withRoots(mainMenu.getChildren(null)).traverse().size();

View File

@@ -54,7 +54,8 @@ public class TaskUiTest extends CodeInsightFixtureTestCase {
}
List<AnAction> actions = Utils.expandActionGroup(
group, new PresentationFactory(), DataContext.EMPTY_CONTEXT, ActionPlaces.MAIN_TOOLBAR);
group, new PresentationFactory(), DataContext.EMPTY_CONTEXT,
ActionPlaces.MAIN_TOOLBAR, ActionUiKind.TOOLBAR);
assertFalse(actions.contains(combo));
TaskManager manager = TaskManager.getManager(getProject());