mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[log] Add registry key vcs.log.bek.sort=false.
This commit is contained in:
@@ -202,6 +202,7 @@ compiler.document.save.trigger.delay.description=Delay in milliseconds before tr
|
||||
|
||||
vcs.show.colored.annotations=true
|
||||
vcs.showConsole=true
|
||||
vcs.log.bek.sort=false
|
||||
|
||||
psi.incremental.reparse.depth.limit=1000
|
||||
psi.deferIconLoading=true
|
||||
|
||||
+3
@@ -112,6 +112,9 @@ public class PermanentGraphImpl<CommitId> implements PermanentGraph<CommitId>, P
|
||||
|
||||
@NotNull
|
||||
private PermanentGraphInfo<CommitId> createBekSort() {
|
||||
if (!BekSorter.isBekEnabled())
|
||||
return this;
|
||||
|
||||
BekIntMap bekMap = BekSorter.createBekMap(myPermanentLinearGraph, myPermanentGraphLayout, myPermanentCommitsInfo.getTimestampGetter());
|
||||
|
||||
DelegatedPermanentGraphInfo<CommitId> graphInfo = new DelegatedPermanentGraphInfo<CommitId>(this, bekMap);
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
package com.intellij.vcs.log.graph.impl.facade.bek;
|
||||
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.vcs.log.graph.api.LinearGraph;
|
||||
import com.intellij.vcs.log.graph.impl.permanent.GraphLayoutImpl;
|
||||
import com.intellij.vcs.log.graph.utils.IntList;
|
||||
@@ -27,6 +28,12 @@ import java.util.List;
|
||||
|
||||
public class BekSorter {
|
||||
|
||||
public static boolean isBekEnabled() { // todo drop later
|
||||
boolean isInternal = Boolean.valueOf(System.getProperty("idea.is.internal"));
|
||||
boolean isBekEnabled = Registry.is("vcs.log.bek.sort");
|
||||
return isBekEnabled || isInternal;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static BekIntMap createBekMap(@NotNull LinearGraph permanentGraph,
|
||||
@NotNull GraphLayoutImpl graphLayout,
|
||||
|
||||
@@ -18,13 +18,14 @@ import com.intellij.ui.components.JBLoadingPanel;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.vcs.log.VcsLog;
|
||||
import com.intellij.vcs.log.VcsLogDataKeys;
|
||||
import com.intellij.vcs.log.VcsLogFilterUi;
|
||||
import com.intellij.vcs.log.VcsLogSettings;
|
||||
import com.intellij.vcs.log.data.DataPack;
|
||||
import com.intellij.vcs.log.data.VcsLogDataHolder;
|
||||
import com.intellij.vcs.log.data.VcsLogUiProperties;
|
||||
import com.intellij.vcs.log.graph.impl.facade.bek.BekSorter;
|
||||
import com.intellij.vcs.log.ui.VcsLogUiImpl;
|
||||
import com.intellij.vcs.log.ui.filter.VcsLogClassicFilterUi;
|
||||
import com.intellij.vcs.log.VcsLogFilterUi;
|
||||
import com.intellij.vcs.log.ui.tables.GraphTableModel;
|
||||
import icons.VcsLogIcons;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -296,6 +297,7 @@ public class MainFrame extends JPanel implements TypeSafeDataProvider {
|
||||
@Override
|
||||
public void update(AnActionEvent e) {
|
||||
super.update(e);
|
||||
e.getPresentation().setVisible(BekSorter.isBekEnabled());
|
||||
e.getPresentation().setEnabled(areGraphActionsEnabled());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.util.Function;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.vcs.log.*;
|
||||
import com.intellij.vcs.log.graph.impl.facade.bek.BekSorter;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -46,6 +47,9 @@ class GitBekParentFixer {
|
||||
|
||||
@NotNull
|
||||
List<TimedVcsCommit> getCorrectCommits() throws VcsException {
|
||||
if (!BekSorter.isBekEnabled())
|
||||
return myAllCommits;
|
||||
|
||||
final Set<Hash> wrongCommits = getWrongCommits();
|
||||
return new AbstractList<TimedVcsCommit>() {
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user