Launcher polish: monogram reveal-on-failure + app placeholder on every icon surface (v0.163.1)
(A) The launcher monogram bled through every transparent white logo — it rendered unconditionally under the img. Now hidden by default (.launch-mono display:none), revealed only when the img chain fails (onerror adds .launch-tile--noimg). (B) The /static/app-placeholder.svg default reached only app_list_row. The four other sanctioned app-logo onerror chains now match the canonical SVG->PNG->placeholder grammar: backups_apps (aligned row), stacks (infra->infra-logo else placeholder), app_info hero (screenshots still vanish), deploy (keeps .LogoURL/.LogoPNGURL). Template/CSS only; no handler/funcmap change. 5 tests + 2 red-proofs.
This commit is contained in:
@@ -26,7 +26,8 @@
|
||||
{{if .FlashSuccess}}<div class="flash flash-success">{{.FlashSuccess}}</div>{{end}}
|
||||
{{if .FlashError}}<div class="flash flash-error">{{.FlashError}}</div>{{end}}
|
||||
<div class="deploy-info">
|
||||
<img class="deploy-logo" src="{{.LogoURL}}" alt="" onerror="this.onerror=function(){this.style.display='none'};this.src='{{.LogoPNGURL}}'">
|
||||
<img class="deploy-logo" src="{{.LogoURL}}" alt="" data-fallback="/static/app-placeholder.svg"
|
||||
onerror="if(!this.dataset.step){this.dataset.step='1';this.src='{{.LogoPNGURL}}';}else if(this.dataset.fallback&&this.dataset.step==='1'){this.dataset.step='2';this.src=this.dataset.fallback;}else{this.onerror=null;this.style.visibility='hidden';}">
|
||||
<div>
|
||||
<h3>{{.Meta.DisplayName}}</h3>
|
||||
{{if .Meta.Description}}<p>{{.Meta.Description}}</p>{{end}}
|
||||
|
||||
Reference in New Issue
Block a user