1
1
mirror of https://github.com/go-gitea/gitea synced 2025-07-22 18:28:37 +00:00

Improve PR Review Box UI (#22986)

This PR follows: 
* #22950

### Before

The Review Box has many problems:

* It doesn't work for small screens.
* It has an anonying animation which makes the UI laggy.
* It uses "custom dropdown menu" which is very difficult to fine tune.
* `$().toggle('visible')` is not a correct call 
* jQuery just accepts any invalid `duration` argument:
`$().toggle('anyting')`
* The button is not a button.

<details>

![image](https://user-images.githubusercontent.com/2114189/219948865-6da3f39c-6fde-4c86-9e42-da5020f3d0c3.png)

</details>

### After

These problems are fixed, and eliminate many `!important` games.

<details>

![image](https://user-images.githubusercontent.com/2114189/219952744-8862fe1a-7ef1-49e4-bf92-2d0c1f104ee4.png)

![image](https://user-images.githubusercontent.com/2114189/219952771-be169a76-45fd-47a8-8f9c-b447d064f4ca.png)

![image](https://user-images.githubusercontent.com/2114189/219952784-3f52e9b7-64ce-4ad1-9553-64c33fb83042.png)

</details>

And most dropdown icons still looks good:

<details>

![image](https://user-images.githubusercontent.com/2114189/219952942-52866a00-e0f9-4af7-8fb5-eb1a8cad1ff3.png)

![image](https://user-images.githubusercontent.com/2114189/219948909-b3bfb844-f84e-4b79-ab1f-382ec66dec31.png)

</details>

Co-authored-by: delvh <leon@kske.dev>
This commit is contained in:
wxiaoguang
2023-02-21 21:36:53 +08:00
committed by GitHub
parent 9ebf6424ee
commit 1fcf96ad01
9 changed files with 35 additions and 52 deletions

View File

@@ -2476,24 +2476,13 @@ table th[data-sortt-desc] {
}
}
/* fix up SVG dropdown triangles because fomantic thinks they are icon fonts */
/* see https://github.com/go-gitea/gitea/issues/14014 */
.ui.dropdown > .dropdown.icon,
.btn-review > .dropdown.icon {
height: auto !important;
margin-left: .5rem !important;
margin-top: -1px !important;
margin-bottom: -1px !important;
margin-right: -.5rem !important;
.ui.dropdown .svg.dropdown.icon,
.svg.dropdown.icon {
margin-top: 0 !important; // reset the "ui.selection.dropdown > .dropdown.icon {margin-top}", for the Issue Dependencies dropdown
margin-right: -.5rem !important; // fix up SVG dropdown triangles because Fomantic thinks they are icon fonts
height: auto; // reset the ".ui.dropdown > .dropdown.icon {height}", otherwise the icon would be too small
}
.ui.button.dropdown > .dropdown.icon,
.btn-review > .dropdown.icon {
float: right !important;
@media (max-width: 480px) {
display: none;
}
}
.ui.selection.dropdown > .search.icon,
.ui.selection.dropdown > .delete.icon,
.ui.selection.dropdown > .dropdown.icon {

View File

@@ -13,7 +13,7 @@
}
.editor-toolbar {
opacity: 1 !important;
max-width: calc(100vw - 80px);
border-color: var(--color-secondary);
}

View File

@@ -2864,11 +2864,6 @@
margin-top: 10px;
}
.repo-button-row .dropdown > .dropdown.icon {
margin-left: .25rem !important;
margin-right: 0 !important;
}
.wiki .repo-button-row {
margin-bottom: 0;
}

View File

@@ -220,47 +220,45 @@ a.blob-excerpt:hover {
// See the comment of createCommentEasyMDE() for the review editor
// EasyMDE's options can not handle minHeight & maxHeight together correctly, we have to set minHeight in JS code
#review-box .CodeMirror-scroll {
.review-box-panel .CodeMirror-scroll {
min-height: 80px;
max-height: calc(100vh - 360px);
}
@media @mediaSm {
#review-box > .menu {
> .ui.segment {
width: 94vw;
}
.editor-toolbar {
overflow-x: auto;
}
}
#review-box .CodeMirror-scroll {
.review-box-panel .CodeMirror-scroll {
max-width: calc(100vw - 70px);
}
}
@media @mediaMd {
#review-box .CodeMirror-scroll {
.review-box-panel .CodeMirror-scroll {
max-width: 700px;
}
}
@media @mediaLg {
#review-box .CodeMirror-scroll {
.review-box-panel .CodeMirror-scroll {
max-width: 800px;
}
}
@media @mediaXl {
#review-box .CodeMirror-scroll {
.review-box-panel .CodeMirror-scroll {
max-width: 900px;
}
}
.review-box > .segment {
border: none !important;
#review-box {
position: relative;
}
.review-box-panel {
position: absolute;
min-width: max-content;
top: 45px;
right: -5px;
z-index: 2;
}
#review-box .review-comments-counter {