From 67371c929d33293eb894489892ff9f4ec3bed6d7 Mon Sep 17 00:00:00 2001 From: bilalgursen Date: Thu, 24 Sep 2026 18:33:08 +0300 Subject: [PATCH] =?UTF-8?q?fix(tasarim):=20=C5=9Fehir=20haritas=C4=B1=20od?= =?UTF-8?q?ak=20kutusu=20harita=20s=C4=B1n=C4=B1rlar=C4=B1na=20kenetlenir?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Telefonda dik kutu haritadan uzun olunca ülke haritasının altı kesiliyor, şehir işareti metnin arkasına kayıyordu (Lefkoşa, 375 px). Kutu haritadan küçükse harita içinde kalır, büyükse harita kutunun içinde kalır. Co-Authored-By: Claude Fable 5.1 --- .../katalog/components/sehir-piksel-haritasi.tsx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/features/katalog/components/sehir-piksel-haritasi.tsx b/src/features/katalog/components/sehir-piksel-haritasi.tsx index 0c7efe6..d05cded 100644 --- a/src/features/katalog/components/sehir-piksel-haritasi.tsx +++ b/src/features/katalog/components/sehir-piksel-haritasi.tsx @@ -96,7 +96,18 @@ function odakKutusu(sinir: Sinir, oran: number, zoom: number, hiza: OdakHiza): K w = h * oran; } const cx = (x0 + x1) / 2, cy = (y0 + y1) / 2; - return [cx - w * hiza.x, cy - h * hiza.y, w, h]; + // Kutu haritanın dışına taşmasın: kutu haritadan küçükse harita içinde + // kalır, büyükse (telefonda dik kutu) harita kutunun içinde kalır — aksi + // hâlde ülke haritasının altı kesilip işaret metnin arkasına kayıyordu + // (Lefkoşa, 375 px, 24 Eyl 2026). + const kenetle = (deger: number, boy: number, sinirBoy: number) => + Math.min(Math.max(deger, Math.min(0, sinirBoy - boy)), Math.max(0, sinirBoy - boy)); + return [ + kenetle(cx - w * hiza.x, w, VIEW_W), + kenetle(cy - h * hiza.y, h, VIEW_H), + w, + h, + ]; } const OPACITIES = [0.3, 0.16, 0.24, 0.12, 0.27, 0.19];