gitea/routers/web/repo
sebastian-sauer 55532061c8
Add commits dropdown in PR files view and allow commit by commit review (#25528)
This PR adds a new dropdown to select a commit or a commit range
(shift-click like github) of a Pull Request.
After selection of a commit only the changes of this commit will be shown.
When selecting a range of commits the diff of this range is shown.

This allows to review a PR commit by commit or by viewing only commit ranges.
The "Show changes since your last review" mechanism github uses is implemented, too.
When reviewing a single commit or a commit range the "Viewed" functionality is disabled.

## Screenshots

### The commit dropdown

![image](https://github.com/go-gitea/gitea/assets/51889757/0db3ae62-1272-436c-be64-4730c5d611e3)

### Selecting a commit range

![image](https://github.com/go-gitea/gitea/assets/51889757/ad81eedb-8437-42b0-8073-2d940c25fe8f)

### Show changes of a single commit only

![image](https://github.com/go-gitea/gitea/assets/51889757/6b1a113b-73ef-4ecc-adf6-bc2340bb8f97)

### Show changes of a commit range

![image](https://github.com/go-gitea/gitea/assets/51889757/6401b358-cd66-4c09-8baa-6cf6177f23a7)


Fixes https://github.com/go-gitea/gitea/issues/20989
Fixes https://github.com/go-gitea/gitea/issues/19263

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: delvh <dev.lh@web.de>
2023-07-28 21:18:12 +02:00
..
actions Implement auto-cancellation of concurrent jobs if the event is push (#25716) 2023-07-25 11:15:55 +08:00
setting Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
activity.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
attachment.go Less naked returns (#25713) 2023-07-07 05:31:56 +00:00
blame.go Sort repo topic labels by name (#24123) 2023-04-14 15:29:05 -04:00
branch.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
cherry_pick.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
commit.go Show branches and tags that contain a commit (#25180) 2023-07-27 12:47:41 +02:00
compare.go Use frontend fetch for branch dropdown component (#25719) 2023-07-21 11:20:04 +00:00
download.go Less naked returns (#25713) 2023-07-07 05:31:56 +00:00
editor_test.go Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
editor.go Refactor "Content" for file uploading (#25851) 2023-07-18 18:14:47 +00:00
find.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
helper_test.go Add actor and status dropdowns to run list (#25118) 2023-06-21 04:25:14 +00:00
helper.go Add actor and status dropdowns to run list (#25118) 2023-06-21 04:25:14 +00:00
http_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
http.go Less naked returns (#25713) 2023-07-07 05:31:56 +00:00
issue_content_history.go Check ctx.Written() for GetActionIssue (#25698) 2023-07-05 18:52:12 +00:00
issue_dependency.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
issue_label_test.go Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
issue_label.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
issue_lock.go Use fetch form action for lock/unlock/pin/unpin on sidebar (#25380) 2023-06-29 04:16:04 +00:00
issue_pin.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
issue_stopwatch.go Speed up HasUserStopwatch & GetActiveStopwatch (#23051) 2023-02-27 13:46:00 -05:00
issue_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue_timetrack.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
issue_watch.go Rewrite logger system (#24726) 2023-05-21 22:35:11 +00:00
issue.go Improve display of Labels/Projects/Assignees sort options (#25886) 2023-07-26 13:00:50 +00:00
main_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
middlewares.go Show outdated comments in files changed tab (#24936) 2023-06-21 16:08:12 +00:00
migrate.go Make repo migration cancelable and fix various bugs (#24605) 2023-05-11 08:25:46 +00:00
milestone.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
packages.go Use dynamic package type list (#22263) 2022-12-29 00:31:54 +01:00
patch.go Sync branches into databases (#22743) 2023-06-29 10:03:20 +00:00
projects_test.go Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
projects.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
pull_review.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
pull.go Add commits dropdown in PR files view and allow commit by commit review (#25528) 2023-07-28 21:18:12 +02:00
release_test.go Refactor web package and context package (#25298) 2023-06-18 09:59:09 +02:00
release.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00
render.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repo.go Use frontend fetch for branch dropdown component (#25719) 2023-07-21 11:20:04 +00:00
search.go Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
topic.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
treelist.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
view_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
view.go Remove db.DefaultContext in routers/ and cmd/ (#26076) 2023-07-23 23:47:27 -04:00
wiki_test.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
wiki.go Move web JSON functions to web context and simplify code (#26132) 2023-07-26 06:04:01 +00:00