aboutsummaryrefslogtreecommitdiff
path: root/src/lib/Tools/Wrapped/MediaExtras.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-05-15 10:27:00 +0000
committerFuwn <[email protected]>2026-05-15 10:27:00 +0000
commit0d041c6b61fddb96fe3c65764bf54298cdadbeba (patch)
treea6069215ed797880d2cd1b096b30777b3cabb8f5 /src/lib/Tools/Wrapped/MediaExtras.svelte
parentfix(a11y): give CommandPalette real dialog and combobox semantics (diff)
downloaddue.moe-0d041c6b61fddb96fe3c65764bf54298cdadbeba.tar.xz
due.moe-0d041c6b61fddb96fe3c65764bf54298cdadbeba.zip
perf(images): lazy-load and async-decode off-screen imagery
Add loading=lazy and decoding=async to the 16 <img> elements that weren't already deferring across Tools/Wrapped, Events, EasterEvent, Hololive, and the rate-limited fallback. Also drop the backdrop-filter: blur(160px) the dropdown items were paying on every hover; the background-color change already gives sufficient feedback, and the parent card's own blur stays.
Diffstat (limited to 'src/lib/Tools/Wrapped/MediaExtras.svelte')
-rw-r--r--src/lib/Tools/Wrapped/MediaExtras.svelte4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/Tools/Wrapped/MediaExtras.svelte b/src/lib/Tools/Wrapped/MediaExtras.svelte
index 6eefcbe9..9097fa90 100644
--- a/src/lib/Tools/Wrapped/MediaExtras.svelte
+++ b/src/lib/Tools/Wrapped/MediaExtras.svelte
@@ -22,6 +22,8 @@ export let genreTagTitle: string;
src={proxy(topMedia.topGenreMedia.coverImage.extraLarge)}
alt="Highest Rated Genre Cover"
class="cover-image"
+ loading="lazy"
+ decoding="async"
onload={updateWidth}
/>
</a>
@@ -53,6 +55,8 @@ export let genreTagTitle: string;
src={proxy(topMedia.topTagMedia.coverImage.extraLarge)}
alt="Highest Rated Tag Cover"
class="cover-image"
+ loading="lazy"
+ decoding="async"
onload={updateWidth}
/>
</a>