summaryrefslogtreecommitdiffstats
path: root/web_src/css/repository.css
diff options
context:
space:
mode:
authorsilverwind <me@silverwind.io>2023-03-30 14:06:10 +0200
committerGitHub <noreply@github.com>2023-03-30 20:06:10 +0800
commitaa4d1d94f79e8edd9fa9ff2813fea12b085b2cae (patch)
tree2197145a72c7e8efecb101acc176a9cb7da274c5 /web_src/css/repository.css
parent35cb786ca1dd6d12963ac7067945065b271f36ad (diff)
downloadgitea-aa4d1d94f79e8edd9fa9ff2813fea12b085b2cae.tar.gz
gitea-aa4d1d94f79e8edd9fa9ff2813fea12b085b2cae.zip
Diff improvements (#23553)
- Avoid flash of wrong tree toggle icon on page load by setting icon based on sync state - Avoid "pop-in" of tree on page load by leaving space based on sync state - Use the same border/box-shadow combo used on comment `:target` also for file `:target`. - Refactor `DiffFileTree.vue` to use `toggleElem` instead of hardcoded class name. - Left-align inline comment boxes and make them fit the same amount of markup content on a line as GitHub. - Fix height of `diff-file-list` Fixes: https://github.com/go-gitea/gitea/issues/23593 <img width="1250" alt="Screenshot 2023-03-18 at 00 52 04" src="https://user-images.githubusercontent.com/115237/226071392-6789a644-aead-4756-a77e-aba3642150a0.png"> <img width="1246" alt="Screenshot 2023-03-18 at 00 59 43" src="https://user-images.githubusercontent.com/115237/226071443-8bcba924-458b-48bd-b2f0-0de59cb180ac.png"> <img width="1250" alt="Screenshot 2023-03-18 at 01 27 14" src="https://user-images.githubusercontent.com/115237/226073121-ccb99f9a-d3ac-40b7-9589-43580c4a01c9.png"> <img width="1231" alt="Screenshot 2023-03-19 at 21 44 16" src="https://user-images.githubusercontent.com/115237/226207951-81bcae1b-6b41-4e39-83a7-0f37951df6be.png"> (Yes I'm aware the border-radius in bottom corners is suboptimal, but this would be notorously hard to fix without relying on `overflow: hidden`).
Diffstat (limited to 'web_src/css/repository.css')
-rw-r--r--web_src/css/repository.css43
1 files changed, 37 insertions, 6 deletions
diff --git a/web_src/css/repository.css b/web_src/css/repository.css
index e2f2075946..27d6a51cdd 100644
--- a/web_src/css/repository.css
+++ b/web_src/css/repository.css
@@ -1616,14 +1616,12 @@
padding: 7px 0;
background: var(--color-body);
line-height: 30px;
- height: 47px; /* match .ui.attached.header.diff-file-header.sticky-2nd-row */
}
@media (max-width: 991px) {
.repository .diff-detail-box {
flex-direction: column;
align-items: flex-start;
- height: 77px; /* match .ui.attached.header.diff-file-header.sticky-2nd-row */
}
}
@@ -1679,6 +1677,13 @@
}
}
+.diff-detail-actions {
+ /* prevent font-size from increasing element height so that .diff-detail-box comes
+ out with height of 47px (one line) and 77px (two lines), which is important for
+ position: sticky */
+ height: 33px;
+}
+
.repository .diff-detail-box .diff-detail-actions > * {
margin-right: 0;
}
@@ -1853,10 +1858,24 @@
padding-bottom: 5px;
}
+.diff-file-box {
+ border: 1px solid transparent;
+ border-radius: var(--border-radius);
+}
+
+/* TODO: this can potentially be made "global" by removing the class prefix */
+.diff-file-box .ui.attached.header,
+.diff-file-box .ui.attached.table {
+ margin: 0; /* remove fomantic negative margins */;
+ width: initial; /* remove fomantic over 100% width */;
+ max-width: initial; /* remove fomantic over 100% width */;
+}
+
.repository .diff-stats {
clear: both;
margin-bottom: 5px;
- max-height: 400px;
+ max-height: 200px;
+ height: fit-content;
overflow: auto;
padding-left: 0;
}
@@ -2652,7 +2671,8 @@
filter: drop-shadow(-3px 0 0 var(--color-primary-alpha-30)) !important;
}
-.code-comment:target {
+.code-comment:target,
+.diff-file-box:target {
border-color: var(--color-primary) !important;
border-radius: var(--border-radius) !important;
box-shadow: 0 0 0 3px var(--color-primary-alpha-30) !important;
@@ -3226,17 +3246,28 @@ td.blob-excerpt {
}
#diff-file-tree {
- width: 20%;
+ flex: 0 0 20%;
max-width: 380px;
line-height: inherit;
position: sticky;
padding-top: 0;
top: 47px;
- max-height: calc(100vh - 50px);
+ max-height: calc(100vh - 47px);
height: 100%;
overflow-y: auto;
}
+.diff-toggle-file-tree-button {
+ background: none;
+ border: none;
+ user-select: none;
+ color: inherit;
+}
+
+.diff-toggle-file-tree-button:hover {
+ color: var(--color-primary);
+}
+
@media (max-width: 991px) {
#diff-file-tree {
display: none !important;