mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-10-31 05:02:25 -05:00 
			
		
		
		
	[chore] render avatar in photoswipe slide, remove repeated alt text
This commit is contained in:
		
					parent
					
						
							
								e032c959e1
							
						
					
				
			
			
				commit
				
					
						e7325209d2
					
				
			
		
					 3 changed files with 69 additions and 36 deletions
				
			
		|  | @ -20,8 +20,20 @@ | ||||||
| .profile .profile-header { | .profile .profile-header { | ||||||
| 	background: $profile-bg; | 	background: $profile-bg; | ||||||
| 	border-radius: $br; | 	border-radius: $br; | ||||||
| 	overflow: hidden; | 
 | ||||||
| 	margin-bottom: 1rem; | 	/* | ||||||
|  | 		Link to open media in slide | ||||||
|  | 		should fill entire media wrapper. | ||||||
|  | 	*/ | ||||||
|  | 	a.photoswipe-slide { | ||||||
|  | 		display: inline-block; | ||||||
|  | 		height: 100%; | ||||||
|  | 		width: 100%; | ||||||
|  | 		 | ||||||
|  | 		&:focus-visible { | ||||||
|  | 			outline: $button-focus-outline; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
| 
 | 
 | ||||||
| 	.moved-to { | 	.moved-to { | ||||||
| 		padding: 1rem; | 		padding: 1rem; | ||||||
|  | @ -30,7 +42,9 @@ | ||||||
| 
 | 
 | ||||||
| 	.header-image-wrapper { | 	.header-image-wrapper { | ||||||
| 		position: relative; | 		position: relative; | ||||||
| 		padding-top: 33.33%; /* aspect-ratio 1/3 */ | 		aspect-ratio: 3; | ||||||
|  | 		height: 100%; | ||||||
|  | 		width: 100%; | ||||||
| 		 | 		 | ||||||
| 		img { | 		img { | ||||||
| 			position: absolute; | 			position: absolute; | ||||||
|  | @ -66,6 +80,7 @@ | ||||||
| 		margin: 1rem; | 		margin: 1rem; | ||||||
| 		margin-top: calc(-1 * $overlap); | 		margin-top: calc(-1 * $overlap); | ||||||
| 		gap: 0 1rem; | 		gap: 0 1rem; | ||||||
|  | 		padding-bottom: 1rem; | ||||||
| 
 | 
 | ||||||
| 		.avatar-image-wrapper { | 		.avatar-image-wrapper { | ||||||
| 			grid-area: avatar; | 			grid-area: avatar; | ||||||
|  | @ -81,24 +96,13 @@ | ||||||
| 			height: $avatar-size; | 			height: $avatar-size; | ||||||
| 			width: $avatar-size; | 			width: $avatar-size; | ||||||
| 
 | 
 | ||||||
| 			/* |  | ||||||
| 				Link to open media in slide |  | ||||||
| 				should fill entire media wrapper. |  | ||||||
| 			*/ |  | ||||||
| 			a.photoswipe-slide { |  | ||||||
| 				display: inline-block; |  | ||||||
| 				height: 100%; |  | ||||||
| 				width: 100%; |  | ||||||
| 	 |  | ||||||
| 			/* | 			/* | ||||||
| 				Offset to avoid clashing with | 				Offset to avoid clashing with | ||||||
| 				thick border around avatars. | 				thick border around avatars. | ||||||
| 			*/ | 			*/ | ||||||
| 				&:focus-visible { | 			a.photoswipe-slide:focus-visible { | ||||||
| 					outline: $button-focus-outline; |  | ||||||
| 				outline-offset: 0.25rem; | 				outline-offset: 0.25rem; | ||||||
| 			} | 			} | ||||||
| 			} |  | ||||||
| 
 | 
 | ||||||
| 			.avatar { | 			.avatar { | ||||||
| 				/* | 				/* | ||||||
|  |  | ||||||
|  | @ -91,7 +91,6 @@ | ||||||
|         data-pswp-width="{{- template "avatarWidth" . -}}px" |         data-pswp-width="{{- template "avatarWidth" . -}}px" | ||||||
|         data-pswp-height="{{- template "avatarHeight" . -}}px" |         data-pswp-height="{{- template "avatarHeight" . -}}px" | ||||||
|         data-cropped="true" |         data-cropped="true" | ||||||
|         alt="{{- template "avatarAlt" . -}}" |  | ||||||
|         title="{{- template "avatarAlt" . -}}" |         title="{{- template "avatarAlt" . -}}" | ||||||
|     > |     > | ||||||
|         <picture |         <picture | ||||||
|  | @ -109,7 +108,6 @@ | ||||||
|                 class="avatar u-photo" |                 class="avatar u-photo" | ||||||
|                 src="{{- .account.Avatar -}}" |                 src="{{- .account.Avatar -}}" | ||||||
|                 alt="{{- template "avatarAlt" . -}}" |                 alt="{{- template "avatarAlt" . -}}" | ||||||
|                 title="{{- template "avatarAlt" . -}}" |  | ||||||
|                 width="{{- template "avatarWidth" . -}}" |                 width="{{- template "avatarWidth" . -}}" | ||||||
|                 height="{{- template "avatarHeight" . -}}" |                 height="{{- template "avatarHeight" . -}}" | ||||||
|             /> |             /> | ||||||
|  | @ -119,21 +117,42 @@ | ||||||
| {{- end }} | {{- end }} | ||||||
| {{- end -}} | {{- end -}} | ||||||
| 
 | 
 | ||||||
|  | {{- define "header" -}} | ||||||
| {{- with . }} | {{- with . }} | ||||||
| <h2 class="sr-only">Profile for {{ .account.Username -}}</h2> |  | ||||||
| <section class="profile-header" role="region" aria-label="Basic info"> |  | ||||||
|     {{- if .account.Moved }} |  | ||||||
|     {{- include "profileMovedTo" . | indent 2 }} |  | ||||||
|     {{- end }} |  | ||||||
|     <div class="header-image-wrapper"> |  | ||||||
|         <picture> |  | ||||||
| {{- if .account.HeaderAttachment }} | {{- if .account.HeaderAttachment }} | ||||||
|  | <div | ||||||
|  |     class="photoswipe-gallery odd single header-image-wrapper" | ||||||
|  |     role="group" | ||||||
|  | > | ||||||
|  |     <a | ||||||
|  |         class="photoswipe-slide" | ||||||
|  |         href="{{- .account.Header -}}" | ||||||
|  |         target="_blank" | ||||||
|  |         data-pswp-width="{{- .account.HeaderAttachment.Meta.Original.Width -}}px" | ||||||
|  |         data-pswp-height="{{- .account.HeaderAttachment.Meta.Original.Height -}}px" | ||||||
|  |         data-cropped="true" | ||||||
|  |         title="{{- template "headerAlt" . -}}" | ||||||
|  |     > | ||||||
|  |         <picture | ||||||
|  |             aria-hidden="true" | ||||||
|  |         > | ||||||
|             <source |             <source | ||||||
|                 srcset="{{- .account.HeaderStatic -}}" |                 srcset="{{- .account.HeaderStatic -}}" | ||||||
|                 type="{{- .account.HeaderAttachment.PreviewMIMEType -}}" |                 type="{{- .account.HeaderAttachment.PreviewMIMEType -}}" | ||||||
|                 media="(prefers-reduced-motion: reduce)" |                 media="(prefers-reduced-motion: reduce)" | ||||||
|             /> |             /> | ||||||
|             {{- end }} |             <img | ||||||
|  |                 src="{{- .account.Header -}}" | ||||||
|  |                 alt="{{- template "headerAlt" . -}}" | ||||||
|  |                 width="{{- .account.HeaderAttachment.Meta.Original.Width -}}" | ||||||
|  |                 height="{{- .account.HeaderAttachment.Meta.Original.Height -}}" | ||||||
|  |             /> | ||||||
|  |         </picture> | ||||||
|  |     </a> | ||||||
|  | </div> | ||||||
|  | {{- else }} | ||||||
|  | <div class="header-image-wrapper"> | ||||||
|  |     <picture> | ||||||
|         <img |         <img | ||||||
|             src="{{- .account.Header -}}" |             src="{{- .account.Header -}}" | ||||||
|             alt="{{- template "headerAlt" . -}}" |             alt="{{- template "headerAlt" . -}}" | ||||||
|  | @ -141,9 +160,22 @@ | ||||||
|         /> |         /> | ||||||
|     </picture> |     </picture> | ||||||
| </div> | </div> | ||||||
|  | {{- end }} | ||||||
|  | {{- end }} | ||||||
|  | {{- end -}} | ||||||
|  | 
 | ||||||
|  | {{- with . }} | ||||||
|  | <h2 class="sr-only">Profile for {{ .account.Username -}}</h2> | ||||||
|  | <section class="profile-header" role="region" aria-label="Basic info"> | ||||||
|  |     {{- if .account.Moved }} | ||||||
|  |     {{- include "profileMovedTo" . | indent 1 }} | ||||||
|  |     {{- end }} | ||||||
|  |     {{- with . }} | ||||||
|  |     {{- include "header" . | indent 1 }} | ||||||
|  |     {{- end }} | ||||||
|     <div class="basic-info"> |     <div class="basic-info"> | ||||||
|         {{- with . }} |         {{- with . }} | ||||||
|         {{- include "avatar" . | indent 3 }} |         {{- include "avatar" . | indent 2 }} | ||||||
|         {{- end }} |         {{- end }} | ||||||
|         <dl class="namerole"> |         <dl class="namerole"> | ||||||
|             <dt class="sr-only">Display name</dt> |             <dt class="sr-only">Display name</dt> | ||||||
|  |  | ||||||
|  | @ -24,7 +24,6 @@ | ||||||
|     loading="lazy" |     loading="lazy" | ||||||
|     {{- if .Description }} |     {{- if .Description }} | ||||||
|     alt="{{- .Description -}}" |     alt="{{- .Description -}}" | ||||||
|     title="{{- .Description -}}" |  | ||||||
|     {{- end }} |     {{- end }} | ||||||
|     width="{{- .Meta.Small.Width -}}" |     width="{{- .Meta.Small.Width -}}" | ||||||
|     height="{{- .Meta.Small.Height -}}" |     height="{{- .Meta.Small.Height -}}" | ||||||
|  | @ -37,7 +36,6 @@ | ||||||
|     loading="lazy" |     loading="lazy" | ||||||
|     {{- if .Description }} |     {{- if .Description }} | ||||||
|     alt="{{- .Description -}}" |     alt="{{- .Description -}}" | ||||||
|     title="{{- .Description -}}" |  | ||||||
|     {{- end }} |     {{- end }} | ||||||
|     width="518" |     width="518" | ||||||
|     height="460" |     height="460" | ||||||
|  | @ -138,7 +136,6 @@ | ||||||
|             data-pswp-height="{{- .Item.Meta.Original.Height -}}px" |             data-pswp-height="{{- .Item.Meta.Original.Height -}}px" | ||||||
|             data-cropped="true" |             data-cropped="true" | ||||||
|             {{- if .Item.Description }} |             {{- if .Item.Description }} | ||||||
|             alt="{{- .Item.Description -}}" |  | ||||||
|             title="{{- .Item.Description -}}" |             title="{{- .Item.Description -}}" | ||||||
|             {{- end }} |             {{- end }} | ||||||
|         > |         > | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue