From 756238576230abb21400785edf7b73142ef6d7cf Mon Sep 17 00:00:00 2001 From: Ivan Migalev Date: Thu, 9 Feb 2023 13:08:43 +0100 Subject: [PATCH] (IJ-CR-102075) NewToolbarRootPaneExtension: extract the left/right APIs to override them in Rider Co-authored-by: Elena Korotkova GitOrigin-RevId: d8e9fe4bb89f29ec1bc9e7a3b78b996459bd8627 --- .../experimental/NewToolbarRootPaneExtension.kt | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt index 51be01d5885b6..0a4293ca9826a 100644 --- a/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt +++ b/platform/lang-impl/src/com/intellij/ide/navigationToolbar/experimental/NewToolbarRootPaneExtension.kt @@ -14,7 +14,6 @@ import com.intellij.openapi.actionSystem.impl.ActionToolbarImpl import com.intellij.openapi.actionSystem.impl.segmentedActionBar.ToolbarActionsUpdatedListener import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.application.EDT -import com.intellij.openapi.components.Service import com.intellij.openapi.components.service import com.intellij.openapi.diagnostic.logger import com.intellij.openapi.project.Project @@ -95,20 +94,20 @@ open class NewToolbarRootPaneManager(private val project: Project) : SimpleModif } } + open fun isLeftSideAction(action: AnAction): Boolean = + action.templateText.equals(ActionsBundle.message("group.LeftToolbarSideGroup.text")) + + open fun isRightSideAction(action: AnAction): Boolean = + action.templateText.equals(ActionsBundle.message("group.RightToolbarSideGroup.text")) + @RequiresBackgroundThread private fun correctedToolbarActions(): Map { val toolbarGroup = getToolbarGroup() ?: return emptyMap() val children = toolbarGroup.getChildren(null) - val leftGroup = children.firstOrNull { - it.templateText.equals(ActionsBundle.message("group.LeftToolbarSideGroup.text")) || it.templateText.equals( - ActionsBundle.message("group.LeftToolbarSideGroupXamarin.text")) - } - val rightGroup = children.firstOrNull { - it.templateText.equals(ActionsBundle.message("group.RightToolbarSideGroup.text")) || it.templateText.equals( - ActionsBundle.message("group.RightToolbarSideGroupXamarin.text")) - } + val leftGroup = children.firstOrNull(::isLeftSideAction) + val rightGroup = children.firstOrNull(::isRightSideAction) val restGroup = DefaultActionGroup(children.filter { it != leftGroup && it != rightGroup }) val map = mutableMapOf()