UI/UX: terrible experience in project settings due to expanding/collapsing sections
Use case 1: sharing direct links
It's impossible to share direct links to settings due to "Expand" buttons present in most settings pages.
At best, I can share a link to PROJECT_URL/settings/repository, and then say/write "Expand Protected Branches section".
Use case 2: add three protected branches
- Go to PROJECT_URL/settings/repository.
- Expand "Protected Branches".
- Protect new branch.
- Expand "Protected Branches".
- Protect new branch.
- Expand "Protected Branches".
- Protect new branch.
Use case 3: setup repo mirroring
- Go to PROJECT_URL/settings/repository.
- Expand "Push to a remote repository"
- Fill in and submit.
- Expand "Push to a remote repository"
- Click "Refresh"
- Expand "Push to a remote repository"
- Watch the progress.
- Get bored, hit F5 to refresh.
- Expand "Push to a remote repository"
- Watch the progress.
Use case 4: remove 10 stale runners
- Go to PROJECT_URL/settings/ci_cd.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
- Expand "Runners"
- Click delete icon at a runner.
Summary
Having to expand a section each time a page reloads is terrible and extremely annoying. We can do better:
- Introduce a permalink to each section. Append #sectionname to URL after a section has been expanded.
- Point all non-AJAX form submissions to the appropriate #sectionname.
- Auto-expand a section upon
gitlab-ce~2024184
CC @dzaporozhets @JobV @markglenfletcher @mikegreiling @pedroms @tauriedavis