From 05bf1d2c80cfd84e01cbeddd896950cb21af8dbc Mon Sep 17 00:00:00 2001 From: Konstantin Kolosovsky Date: Tue, 5 Jun 2018 20:52:47 +0300 Subject: [PATCH] vcs: Do not track dumb mode for commit options in project settings --- .../openapi/vcs/changes/ui/BooleanCommitOption.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/BooleanCommitOption.kt b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/BooleanCommitOption.kt index 4002520c9fc5..c35126a71bc5 100644 --- a/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/BooleanCommitOption.kt +++ b/platform/vcs-impl/src/com/intellij/openapi/vcs/changes/ui/BooleanCommitOption.kt @@ -3,21 +3,24 @@ package com.intellij.openapi.vcs.changes.ui import com.intellij.openapi.options.UnnamedConfigurable import com.intellij.openapi.vcs.CheckinProjectPanel -import com.intellij.openapi.vcs.checkin.CheckinHandlerUtil +import com.intellij.openapi.vcs.checkin.CheckinHandlerUtil.disableWhenDumb +import com.intellij.openapi.vcs.configurable.CommitOptionsConfigurable import com.intellij.openapi.vcs.ui.RefreshableOnComponent import com.intellij.ui.NonFocusableCheckBox import java.util.function.Consumer import javax.swing.JComponent -open class BooleanCommitOption(panel: CheckinProjectPanel, +open class BooleanCommitOption(private val checkinPanel: CheckinProjectPanel, text: String, disableWhenDumb: Boolean, private val getter: () -> Boolean, private val setter: Consumer) : RefreshableOnComponent, UnnamedConfigurable { protected val checkBox = NonFocusableCheckBox(text).also { - if (disableWhenDumb) CheckinHandlerUtil.disableWhenDumb(panel.project, it, "Impossible until indices are up-to-date") + if (disableWhenDumb && !isInSettings) disableWhenDumb(checkinPanel.project, it, "Impossible until indices are up-to-date") } + private val isInSettings get() = checkinPanel is CommitOptionsConfigurable.CheckinPanel + override fun refresh() { }