gitea/routers
Alexander McRae aba96f65cd
Use `git diff-tree` for `DiffFileTree` on diff pages (#33514)
Modify Diff View FileTree to show all files

## Changes

* removes Show Status button on diff
* uses `git diff-tree` to generate the file tree for the diff
* doesn't reload the diff tree each time we load more files in the
preview
* selecting and unloaded file will keep loading until that file is
loaded
* removes `DiffFileList.vue` and "Show Stats" in diff options

## Open Questions

* selecting and unloaded file will keep loading until that file is
loaded. Is this behaviour okay? It matches what github does.

### Demo

In this demo I set `git.MAX_GIT_DIFF_FILES=1` in my `app.ini` to
demonstrate a worst case example. In most cases the behaviour isn't
nearly as jarring as we load a bunch of files at a time.


https://github.com/user-attachments/assets/72f29663-d6fc-472d-94fa-7fb5950c2836

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-02-28 00:58:25 +00:00
..
api allow filtering /repos/{owner}/{repo}/pulls by target base branch queryparam (#33684) 2025-02-27 17:50:44 +00:00
common Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
install Avoid duplicate SetContextValue call (#33564) 2025-02-12 14:25:46 +08:00
private Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
utils Refactor older tests to use testify (#33140) 2025-01-09 09:21:47 +08:00
web Use `git diff-tree` for `DiffFileTree` on diff pages (#33514) 2025-02-28 00:58:25 +00:00
init.go Prepare for support performance trace (#33286) 2025-01-15 20:05:18 +00:00