From 8e5c71fab946a69c79d88436cead2aed3bbcd9af Mon Sep 17 00:00:00 2001 From: Aleksey Pivovarov Date: Tue, 30 Nov 2021 14:19:42 +0300 Subject: [PATCH] [vcs-log] allow navigating in tabs with inactive 'affected files' filter GitOrigin-RevId: 3866de02a9ec8e291310cb96225a838d1092c609 --- .../src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt index a95876b00839..ba86a8534f82 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogContentUtil.kt @@ -24,6 +24,7 @@ import com.intellij.util.concurrency.annotations.RequiresBackgroundThread import com.intellij.util.concurrency.annotations.RequiresEdt import com.intellij.vcs.log.Hash import com.intellij.vcs.log.VcsLogBundle +import com.intellij.vcs.log.VcsLogFilterCollection import com.intellij.vcs.log.VcsLogUi import com.intellij.vcs.log.impl.VcsLogManager.VcsLogUiFactory import com.intellij.vcs.log.ui.MainVcsLogUi @@ -106,7 +107,11 @@ object VcsLogContentUtil { private suspend fun jumpToRevision(project: Project, root: VirtualFile, hash: Hash, filePath: FilePath): Boolean { return runInCurrentOrCreateNewTab(project) { logUi -> if (logUi.properties.exists(MainVcsLogUiProperties.SHOW_ONLY_AFFECTED_CHANGES) && - logUi.properties.get(MainVcsLogUiProperties.SHOW_ONLY_AFFECTED_CHANGES)) return@runInCurrentOrCreateNewTab false + logUi.properties.get(MainVcsLogUiProperties.SHOW_ONLY_AFFECTED_CHANGES) && + !logUi.properties.getFilterValues(VcsLogFilterCollection.STRUCTURE_FILTER.name).isNullOrEmpty()) { + // Structure filter might prevent us from navigating to FilePath + return@runInCurrentOrCreateNewTab false + } val jumpResult = VcsLogUtil.jumpToCommit(logUi, hash, root, true, true).await() when (jumpResult) {