omnibox: make favicons readable on dark overlay (light chip background, subtle border/shadow, slight brightness/contrast boost); keeps transparency for non-square icons
- commit
- c9efd769f8b8c452cf00d75ffc0de00d50ed0812
- author
- bamen · · 2025-09-09 19:13 UTC
- committer
- bamen · · 2025-09-09 19:42 UTC
- parent
- 66e5fc8
- signature
- unsigned
1 file · +3 -2
M pkg/webkit/ucm_js_cgo.go +3 -2
| @@ -171,8 +171,9 @@ func getOmniboxScript() string { | |||
| 171 | 171 | // Favicon | |
| 172 | 172 | const icon = document.createElement('img'); | |
| 173 | 173 | icon.src = s.favicon || ''; | |
| 174 | - | icon.width = 18; icon.height = 18; icon.loading = 'lazy'; | |
| 175 | - | icon.style.cssText = 'flex:0 0 18px;width:18px;height:18px;border-radius:4px;opacity:.95;'; | |
| 174 | + | icon.width = 16; icon.height = 16; icon.loading = 'lazy'; | |
| 175 | + | // Ensure dark favicons remain visible on dark overlay: light chip + mild lift | |
| 176 | + | icon.style.cssText = 'flex:0 0 20px;width:16px;height:16px;padding:2px;box-sizing:content-box;border-radius:6px;background:#fff;border:1px solid rgba(0,0,0,.15);box-shadow:0 1px 2px rgba(0,0,0,.15);filter:brightness(1.12) contrast(1.04);'; | |
| 176 | 177 | icon.onerror = ()=>{ icon.style.display='none'; }; | |
| 177 | 178 | // Text line: Domain | full path (one line, fade at end) | |
| 178 | 179 | let domain = '', path = ''; | |
| @@ -171,8 +171,9 @@ func getOmniboxScript() string { | |||||
| 171 | // Favicon | 171 | // Favicon | ||
| 172 | const icon = document.createElement('img'); | 172 | const icon = document.createElement('img'); | ||
| 173 | icon.src = s.favicon || ''; | 173 | icon.src = s.favicon || ''; | ||
| 174 | - | icon.width = 18; icon.height = 18; icon.loading = 'lazy'; | 174 | + | icon.width = 16; icon.height = 16; icon.loading = 'lazy'; |
| 175 | - | icon.style.cssText = 'flex:0 0 18px;width:18px;height:18px;border-radius:4px;opacity:.95;'; | 175 | + | // Ensure dark favicons remain visible on dark overlay: light chip + mild lift |
| 176 | + | icon.style.cssText = 'flex:0 0 20px;width:16px;height:16px;padding:2px;box-sizing:content-box;border-radius:6px;background:#fff;border:1px solid rgba(0,0,0,.15);box-shadow:0 1px 2px rgba(0,0,0,.15);filter:brightness(1.12) contrast(1.04);'; | |||
| 176 | icon.onerror = ()=>{ icon.style.display='none'; }; | 177 | icon.onerror = ()=>{ icon.style.display='none'; }; | ||
| 177 | // Text line: Domain | full path (one line, fade at end) | 178 | // Text line: Domain | full path (one line, fade at end) | ||
| 178 | let domain = '', path = ''; | 179 | let domain = '', path = ''; | ||