11package com.github.lppedd.cc.editor
22
33import com.intellij.ide.plugins.PluginManager
4- import com.intellij.openapi.actionSystem.Constraints
5- import com.intellij.openapi.actionSystem.DefaultActionGroup
64import com.intellij.openapi.actionSystem.ex.ActionRuntimeRegistrar
75import com.intellij.openapi.actionSystem.impl.ActionConfigurationCustomizer
86import com.intellij.openapi.actionSystem.impl.ActionConfigurationCustomizer.LightCustomizeStrategy
@@ -13,9 +11,6 @@ import com.intellij.openapi.extensions.PluginId
1311 */
1412@Suppress(" UnstableApiUsage" )
1513internal class CommitTabActionConfigurationCustomizer : ActionConfigurationCustomizer , LightCustomizeStrategy {
16- private val actionId = " EditorTab"
17- private val groupId = " EditorActions"
18-
1914 override suspend fun customize (actionRegistrar : ActionRuntimeRegistrar ) {
2015 // Rider register its own EditorTab action, see com.jetbrains.rider.editorActions.FrontendTabAction.
2116 // Unfortunately, that action is coded in Kotlin and marked as final,
@@ -25,14 +20,12 @@ internal class CommitTabActionConfigurationCustomizer : ActionConfigurationCusto
2520 return
2621 }
2722
28- val oldAction = actionRegistrar.getActionOrStub(actionId )
23+ val oldAction = actionRegistrar.getActionOrStub(" EditorTab " )
2924
3025 if (oldAction != null ) {
31- val actionGroup = actionRegistrar.getActionOrStub(groupId) as DefaultActionGroup
3226 val newAction = CommitTabAction ()
33- actionRegistrar.unregisterAction(actionId)
34- actionRegistrar.registerAction(actionId, newAction)
35- actionRegistrar.addToGroup(actionGroup, newAction, Constraints .LAST )
27+ newAction.copyFrom(oldAction) // ActionUtil.copyFrom does not work
28+ actionRegistrar.replaceAction(" EditorTab" , newAction)
3629 }
3730 }
3831}
0 commit comments