New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Straighten graph lanes over multiple rows #9050
Conversation
internal const int MaxLanes = 40; | ||
private const int _straightenLanesLookAhead = 20; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These two constants could be turned into settings, which might solve #8498, too.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While I personally like options, I believe GE has too many options for most users so I will by default vote no to new options.
If this can be described well it could be added.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of another panel, the column could be made resizable. I am happy with the dynamic resizing.
This could be the configuration for MaxLanes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we detect automatically how many lanes required?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we detect automatically how many lanes required?
For this, it would not suffice to load the revisions: The graph segments must be created, which is an expensive operation. That's why it is done in chunks of at most 1500 rows on user request.
MaxLanes
is a hard-coded limit. (I have not introduced it. I moved it here from RevisionGraphColumnProvider
in the predecessor PR.)
d38d26b
to
dfb777d
Compare
How do you like the idea to mirror the graph vertically? |
Pro: The main branch would be located directly beside the commit subject.
I do not see the benefit of showing only one line of the graph.
The whole graph can be hidden using the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixes #5782
Follow-up to / generalization of #9028
Proposed changes
RevisionGraphRow._revisionLane
andRevisionGraph.GetCachedCount
Screenshots
Remark: The part of the red branch starting at
cff2c15
ending at the line with03d75aa
could be straightened, too. Though this is not detected by the current implementation because this part consists of multiple segments.Test methodology
Test environment(s)
✒️ I contribute this code under The Developer Certificate of Origin.