git: don't save and don't load branch filters in the Update Info tab

These could be accidentally set by a user, e.g. to "HEAD", since it is easy to confuse the Update Info tab with an ordinary Log tab. And then the next Update Project will show "100500 commits matching filter", where 100500 is the number of all commits reachable from the HEAD. IDEA-216661

GitOrigin-RevId: c6f6d57337ceda1b397254db5adda5286939cae5
This commit is contained in:
Kirill Likhodedov
2019-07-02 06:52:16 +03:00
committed by intellij-monorepo-bot
parent 31f54ba128
commit abbf408aed
2 changed files with 7 additions and 8 deletions
@@ -15,7 +15,7 @@ import com.intellij.ui.GuiUtils
import com.intellij.util.ContentUtilEx
import com.intellij.util.text.DateFormatUtil
import com.intellij.vcs.log.CommitId
import com.intellij.vcs.log.VcsLogFilterCollection.RANGE_FILTER
import com.intellij.vcs.log.VcsLogFilterCollection.*
import com.intellij.vcs.log.VcsLogRangeFilter
import com.intellij.vcs.log.data.DataPack
import com.intellij.vcs.log.data.DataPackChangeListener
@@ -129,11 +129,10 @@ class GitUpdateInfoAsLog(private val project: Project,
private class MyPropertiesForRange(val rangeFilter: VcsLogRangeFilter,
val mainProperties: GitUpdateProjectInfoLogProperties) : MainVcsLogUiProperties by mainProperties {
override fun getFilterValues(filterName: String): List<String>? {
if (filterName === RANGE_FILTER.name) {
return ArrayList(rangeFilter.getTextPresentation())
}
else {
return mainProperties.getFilterValues(filterName)
when {
filterName === RANGE_FILTER.name -> return ArrayList(rangeFilter.getTextPresentation())
filterName == BRANCH_FILTER.name || filterName == REVISION_FILTER.name -> return null
else -> return mainProperties.getFilterValues(filterName)
}
}
@@ -16,7 +16,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.intellij.vcs.log.VcsLogFilterCollection.RANGE_FILTER;
import static com.intellij.vcs.log.VcsLogFilterCollection.*;
@State(
name = "Git.Update.Project.Info.Tabs.Properties",
@@ -57,7 +57,7 @@ public class GitUpdateProjectInfoLogProperties extends VcsLogUiPropertiesImpl<Gi
@Override
public void saveFilterValues(@NotNull String filterName, @Nullable List<String> values) {
if (filterName != RANGE_FILTER.getName()) {
if (filterName != RANGE_FILTER.getName() && filterName != BRANCH_FILTER.getName() && filterName != REVISION_FILTER.getName()) {
super.saveFilterValues(filterName, values);
}
}