mirror of
				https://codeberg.org/forgejo/forgejo.git
				synced 2025-10-31 14:31:02 +00:00 
			
		
		
		
	1. The previous color contrast calculation function was incorrect at least for the `#84b6eb` where it output low-contrast white instead of black. I've rewritten these functions now to accept hex colors and to match GitHub's calculation and to output pure white/black for maximum contrast. Before and after: <img width="94" alt="Screenshot 2024-04-02 at 01 53 46" src="https://github.com/go-gitea/gitea/assets/115237/00b39e15-a377-4458-95cf-ceec74b78228"><img width="90" alt="Screenshot 2024-04-02 at 01 51 30" src="https://github.com/go-gitea/gitea/assets/115237/1677067a-8d8f-47eb-82c0-76330deeb775"> 2. Fix project-related issues: - Expose the new `ContrastColor` function as template helper and use it for project cards, replacing the previous JS solution which eliminates a flash of wrong color on page load. - Fix a bug where if editing a project title, the counter would get lost. - Move `rgbToHex` function to color utils. Co-authored-by: delvh <dev.lh@web.de> Co-authored-by: Giteabot <teabot@gitea.io> --- Conflict resolution: Trivial. (cherry picked from commit 36887ed3921d03f1864360c95bd2ecf853bfbe72)
		
			
				
	
	
		
			99 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
			
		
		
	
	
			99 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			CSS
		
	
	
	
	
	
| .board {
 | |
|   display: flex;
 | |
|   flex-direction: row;
 | |
|   flex-wrap: nowrap;
 | |
|   overflow-x: auto;
 | |
|   margin: 0 0.5em;
 | |
| }
 | |
| 
 | |
| .project-column {
 | |
|   background-color: var(--color-project-board-bg) !important;
 | |
|   border: 1px solid var(--color-secondary) !important;
 | |
|   margin: 0 0.5rem !important;
 | |
|   padding: 0.5rem !important;
 | |
|   width: 320px;
 | |
|   height: calc(100vh - 450px);
 | |
|   min-height: 60vh;
 | |
|   overflow-y: scroll;
 | |
|   flex: 0 0 auto;
 | |
|   overflow: visible;
 | |
|   display: flex;
 | |
|   flex-direction: column;
 | |
|   cursor: default;
 | |
| }
 | |
| 
 | |
| .project-column .issue-card {
 | |
|   color: var(--color-text);
 | |
| }
 | |
| 
 | |
| .project-column-header {
 | |
|   display: flex;
 | |
|   align-items: center;
 | |
|   justify-content: space-between;
 | |
| }
 | |
| 
 | |
| .project-column-title {
 | |
|   background: none !important;
 | |
|   line-height: 1.25 !important;
 | |
|   cursor: inherit;
 | |
| }
 | |
| 
 | |
| .project-column-title,
 | |
| .project-column-issue-count {
 | |
|   color: inherit !important;
 | |
| }
 | |
| 
 | |
| .project-column > .cards {
 | |
|   flex: 1;
 | |
|   display: flex;
 | |
|   align-content: baseline;
 | |
|   margin: 0 !important;
 | |
|   padding: 0 !important;
 | |
|   flex-wrap: nowrap !important;
 | |
|   flex-direction: column;
 | |
|   overflow-x: auto;
 | |
|   gap: .25rem;
 | |
| }
 | |
| 
 | |
| .project-column > .divider {
 | |
|   margin: 5px 0;
 | |
|   border-color: currentcolor;
 | |
|   opacity: .5;
 | |
| }
 | |
| 
 | |
| .project-column:first-child {
 | |
|   margin-left: auto !important;
 | |
| }
 | |
| 
 | |
| .project-column:last-child {
 | |
|   margin-right: auto !important;
 | |
| }
 | |
| 
 | |
| .card-attachment-images {
 | |
|   display: inline-block;
 | |
|   white-space: nowrap;
 | |
|   overflow: hidden;
 | |
|   text-align: center;
 | |
| }
 | |
| 
 | |
| .card-attachment-images img {
 | |
|   display: inline-block;
 | |
|   max-height: 50px;
 | |
|   border-radius: var(--border-radius);
 | |
|   margin-right: 2px;
 | |
| }
 | |
| 
 | |
| .card-attachment-images img:only-child {
 | |
|   max-height: 90px;
 | |
|   margin: auto;
 | |
| }
 | |
| 
 | |
| .card-ghost {
 | |
|   border-color: var(--color-secondary-dark-4) !important;
 | |
|   border-style: dashed !important;
 | |
|   background: none !important;
 | |
| }
 | |
| 
 | |
| .card-ghost * {
 | |
|   opacity: 0;
 | |
| }
 |