From 5711618e6e117d7d3a164f5280ca0f1d2d01113e Mon Sep 17 00:00:00 2001 From: BordedDev <> Date: Sun, 1 Jun 2025 00:52:02 +0200 Subject: [PATCH] Fix image zoom URL handling to remove width and height parameters instead of all search params --- src/snek/static/message-list.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/snek/static/message-list.js b/src/snek/static/message-list.js index 70c3573..c6430f2 100644 --- a/src/snek/static/message-list.js +++ b/src/snek/static/message-list.js @@ -23,15 +23,23 @@ class MessageList extends HTMLElement { const messagesContainer = this messagesContainer.addEventListener('click', (e) => { if (e.target.tagName !== 'IMG' || e.target.classList.contains('avatar-img')) return; + const img = e.target; + const overlay = document.createElement('div'); overlay.style.cssText = 'position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.9);display:flex;justify-content:center;align-items:center;z-index:9999;' + + const urlObj = new URL(img.currentSrc || img.src) + urlObj.searchParams.delete("width"); + urlObj.searchParams.delete("height"); + const fullImg = document.createElement('img'); - const urlObj = new URL(img.src); urlObj.search = ''; + fullImg.src = urlObj.toString(); fullImg.alt = img.alt; fullImg.style.maxWidth = '90%'; fullImg.style.maxHeight = '90%'; + overlay.appendChild(fullImg); document.body.appendChild(overlay); overlay.addEventListener('click', () => document.body.removeChild(overlay));