Diff View: Scroll to center of hunks when reviewing (#25846)

When reviewing hunks, scroll to put them at the center of the screen
so you can better see the context around that hunk.

The field `center_cursor` was added to the actions `editor::GoToHunk`
and `editor::GoToPrevHunk`, this was set to `false` by default in
keymaps, as it wouldn't help with in-editor navigation.

The field is set to `true` for when you trigger `git::StageAndNext`
and `git::UnstageAndNext`, this is also `true` for the buttons in the
Diff View toolbar.

Release Notes:

- N/A
This commit is contained in:
João Marcos 2025-03-01 00:20:26 -03:00 committed by GitHub
parent a2876f5d3e
commit 2d61a51ded
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
13 changed files with 140 additions and 66 deletions

View file

@ -182,8 +182,18 @@ impl Render for QuickActionBar {
.action("Next Problem", Box::new(GoToDiagnostic))
.action("Previous Problem", Box::new(GoToPrevDiagnostic))
.separator()
.action("Next Hunk", Box::new(GoToHunk))
.action("Previous Hunk", Box::new(GoToPrevHunk))
.action(
"Next Hunk",
Box::new(GoToHunk {
center_cursor: true,
}),
)
.action(
"Previous Hunk",
Box::new(GoToPrevHunk {
center_cursor: true,
}),
)
.separator()
.action("Move Line Up", Box::new(MoveLineUp))
.action("Move Line Down", Box::new(MoveLineDown))