mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-27 12:31:02 +00:00 
			
		
		
		
	Use native instead of fomantic checkboxes in issue list. Benefits include no more JS pop-in on load and perfect a11y. Before, with JS pop-in: <img width="92" alt="Screenshot 2023-03-20 at 17 02 02" src="https://user-images.githubusercontent.com/115237/226398955-99029a1c-1150-449c-821b-e4165e7446a8.png"> After, Firefox on macOS: <img width="126" alt="Screenshot 2023-03-20 at 17 01 26" src="https://user-images.githubusercontent.com/115237/226399018-58df2c32-c2b2-4c78-b7df-7b76523abe21.png"> After, Chrome on macOS: <img width="79" alt="Screenshot 2023-03-20 at 17 01 42" src="https://user-images.githubusercontent.com/115237/226399074-947e6279-8dc3-42c2-90b5-b106c471b23d.png"> I opted to not do styling yet but I see that the inconsistency between browsers may already be reason enough on doing it. I think if we style them, there should be one global style, including markdown ones which currently have custom styling.
		
			
				
	
	
		
			163 lines
		
	
	
	
		
			2.9 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
			
		
		
	
	
			163 lines
		
	
	
	
		
			2.9 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
| .issue.list {
 | |
|   list-style: none;
 | |
|   margin-top: 1rem;
 | |
| }
 | |
| 
 | |
| .issue.list a:not(.label):hover {
 | |
|   color: var(--color-primary) !important;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-icon svg {
 | |
|   margin-right: 0.75rem;
 | |
|   margin-top: 1px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-icons-right > * + * {
 | |
|   margin-left: 0.5rem;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-main {
 | |
|   width: 100%;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .action-item-main {
 | |
|   width: 80%;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-right {
 | |
|   width: 15%;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-top-row {
 | |
|   max-width: 100%;
 | |
|   color: var(--color-text);
 | |
|   font-size: 16px;
 | |
|   min-width: 0;
 | |
|   font-weight: 600;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-top-row a.index {
 | |
|   max-width: fit-content;
 | |
|   display: -webkit-box;
 | |
|   -webkit-box-orient: vertical;
 | |
|   -webkit-line-clamp: 2;
 | |
|   overflow: hidden;
 | |
|   word-break: break-all;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .labels-list {
 | |
|   position: relative;
 | |
|   top: -1.5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-bottom-row {
 | |
|   font-size: 13px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .title {
 | |
|   color: var(--color-text);
 | |
|   word-break: break-word;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .issue-item-icon-right {
 | |
|   min-width: 2rem;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .assignee {
 | |
|   position: relative;
 | |
|   top: -2px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .assignee img {
 | |
|   width: 20px;
 | |
|   height: 20px;
 | |
|   margin-right: 2px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc {
 | |
|   color: var(--color-text-light-2);
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc a {
 | |
|   color: inherit;
 | |
|   word-break: break-word;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .time-since,
 | |
| .issue.list > .item .desc a {
 | |
|   margin-left: 0.25rem;
 | |
|   margin-right: 0.25rem;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .waiting,
 | |
| .issue.list > .item .desc .approvals,
 | |
| .issue.list > .item .desc .rejects {
 | |
|   padding-left: 5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .checklist {
 | |
|   padding-left: 5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .checklist progress {
 | |
|   margin-left: 2px;
 | |
|   width: 80px;
 | |
|   height: 6px;
 | |
|   display: inline-block;
 | |
|   border-radius: 3px;
 | |
|   vertical-align: 2px !important;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .checklist progress::-webkit-progress-value {
 | |
|   background-color: var(--color-secondary-dark-4);
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .checklist progress::-moz-progress-bar {
 | |
|   background-color: var(--color-secondary-dark-4);
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .conflicting {
 | |
|   padding-left: 5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .due-date {
 | |
|   padding-left: 5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc a.milestone,
 | |
| .issue.list > .item .desc a.project {
 | |
|   margin-left: 5px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc a.ref {
 | |
|   margin-left: 8px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc a.ref span {
 | |
|   margin-right: -4px;
 | |
| }
 | |
| 
 | |
| .issue.list > .item .desc .overdue {
 | |
|   color: var(--color-red);
 | |
| }
 | |
| 
 | |
| .issue.list .branches {
 | |
|   display: inline-flex;
 | |
|   padding: 0 4px;
 | |
| }
 | |
| 
 | |
| .issue.list .branches .branch {
 | |
|   background-color: var(--color-secondary);
 | |
|   border-radius: 3px;
 | |
| }
 | |
| 
 | |
| .issue.list .branches .truncated-name {
 | |
|   white-space: nowrap;
 | |
|   overflow: hidden;
 | |
|   text-overflow: ellipsis;
 | |
|   max-width: 10em;
 | |
| }
 | |
| 
 | |
| .issue.list > .item + .item {
 | |
|   border-top: 1px solid var(--color-secondary);
 | |
| }
 |