diff --git a/platform/vcs-log/impl/src/META-INF/vcs-log.xml b/platform/vcs-log/impl/src/META-INF/vcs-log.xml index 84392244b846..a9cb70edfc05 100644 --- a/platform/vcs-log/impl/src/META-INF/vcs-log.xml +++ b/platform/vcs-log/impl/src/META-INF/vcs-log.xml @@ -265,6 +265,9 @@ + + + diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/history/FileHistoryPanel.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/history/FileHistoryPanel.java index aba47339850b..25fa97350abc 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/history/FileHistoryPanel.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/history/FileHistoryPanel.java @@ -16,6 +16,7 @@ import com.intellij.openapi.vcs.changes.Change; import com.intellij.openapi.vcs.changes.EditorTabDiffPreviewManager; import com.intellij.openapi.vcs.history.VcsFileRevision; import com.intellij.openapi.vfs.VirtualFile; +import com.intellij.ui.GuiUtils; import com.intellij.ui.JBSplitter; import com.intellij.ui.OnePixelSplitter; import com.intellij.ui.PopupHandler; @@ -23,6 +24,7 @@ import com.intellij.ui.components.JBPanel; import com.intellij.ui.navigation.History; import com.intellij.ui.switcher.QuickActionProvider; import com.intellij.util.containers.ContainerUtil; +import com.intellij.util.ui.components.BorderLayoutPanel; import com.intellij.util.ui.table.ComponentsListFocusTraversalPolicy; import com.intellij.util.ui.update.Activatable; import com.intellij.util.ui.update.UiNotifyConnector; @@ -202,7 +204,17 @@ public class FileHistoryPanel extends JPanel implements DataProvider, Disposable ActionToolbar toolbar = ActionManager.getInstance().createActionToolbar(ActionPlaces.VCS_HISTORY_TOOLBAR_PLACE, toolbarGroup, true); toolbar.setTargetComponent(myGraphTable); - return toolbar.getComponent(); + + ActionGroup rightToolbarGroup = new DefaultActionGroup(ActionManager.getInstance().getAction(VcsLogActionIds.FILE_HISTORY_TOOLBAR_RIGHT_CORNER_ACTION_GROUP)); + ActionToolbar rightCornerToolbar = ActionManager.getInstance().createActionToolbar(ActionPlaces.VCS_HISTORY_TOOLBAR_PLACE, + rightToolbarGroup, true); + rightCornerToolbar.setTargetComponent(myGraphTable); + + BorderLayoutPanel panel = new BorderLayoutPanel(); + GuiUtils.installVisibilityReferent(panel, toolbar.getComponent()); + panel.addToCenter(toolbar.getComponent()); + panel.addToRight(rightCornerToolbar.getComponent()); + return panel; } public @NotNull VcsLogGraphTable getGraphTable() { diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/VcsLogActionIds.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/VcsLogActionIds.java index 42b1fe86b52e..80941b446952 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/VcsLogActionIds.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/ui/VcsLogActionIds.java @@ -1,4 +1,4 @@ -// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. +// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. package com.intellij.vcs.log.ui; import org.jetbrains.annotations.NonNls; @@ -11,6 +11,7 @@ public final @NonNls class VcsLogActionIds { public static final String PRESENTATION_SETTINGS_ACTION_GROUP = "Vcs.Log.PresentationSettings"; public static final String TEXT_FILTER_SETTINGS_ACTION_GROUP = "Vcs.Log.TextFilterSettings"; public static final String FILE_HISTORY_TOOLBAR_ACTION_GROUP = "Vcs.FileHistory.Toolbar"; + public static final String FILE_HISTORY_TOOLBAR_RIGHT_CORNER_ACTION_GROUP = "Vcs.FileHistory.Toolbar.RightCorner"; public static final String HISTORY_POPUP_ACTION_GROUP = "Vcs.FileHistory.ContextMenu"; public static final String CHANGES_BROWSER_POPUP_ACTION_GROUP = "Vcs.Log.ChangesBrowser.Popup"; public static final String CHANGES_BROWSER_TOOLBAR_ACTION_GROUP = "Vcs.Log.ChangesBrowser.Toolbar";