From 8723298e577650b423ce0a3aac650eaa2dc81be5 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 19 Apr 2026 19:54:38 +0000 Subject: [PATCH 1/4] Initial plan From 116758e1b8148657dd8a36cd0c61598e465a5b32 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 19 Apr 2026 19:57:03 +0000 Subject: [PATCH 2/4] Fix: update cardModeEnabled and toggle button when swiping down to dismiss card Agent-Logs-Url: https://github.com/ProLoser/funcheapmap/sessions/fd9bf64e-94de-41fb-902c-73a19cd9e723 Co-authored-by: ProLoser <67395+ProLoser@users.noreply.github.com> --- map.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/map.js b/map.js index dcfe9fb..52bcb07 100644 --- a/map.js +++ b/map.js @@ -220,7 +220,12 @@ function initEventCard() { const deltaY = e.changedTouches[0].clientY - touchStartY; if (gestureAxis === 'vertical') { - if (deltaY > SWIPE_THRESHOLD) hideEventCard(); + if (deltaY > SWIPE_THRESHOLD) { + hideEventCard(); + cardModeEnabled = false; + localStorage.setItem('cardMode', false); + updateCardToggleButton(); + } return; } From a970a9e006b849859773114769d45e7ce8ee651c Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 19 Apr 2026 20:02:35 +0000 Subject: [PATCH 3/4] Refactor: move state mutation into updateCardToggleButton Agent-Logs-Url: https://github.com/ProLoser/funcheapmap/sessions/92ff3ff7-a708-4317-856d-d3fa1407aedf Co-authored-by: ProLoser <67395+ProLoser@users.noreply.github.com> --- map.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/map.js b/map.js index 52bcb07..1dc49f6 100644 --- a/map.js +++ b/map.js @@ -25,7 +25,11 @@ const SWIPE_THRESHOLD = 50; const VELOCITY_THRESHOLD = 0.3; // px/ms const CARD_TRANSITION = 'transform 0.3s cubic-bezier(0.4,0,0.2,1)'; -function updateCardToggleButton() { +function updateCardToggleButton(enabled) { + if (enabled !== undefined) { + cardModeEnabled = enabled; + localStorage.setItem('cardMode', enabled); + } const button = document.getElementById('card-mode-toggle'); if (!button) return; button.classList.toggle('active', cardModeEnabled); @@ -222,9 +226,7 @@ function initEventCard() { if (gestureAxis === 'vertical') { if (deltaY > SWIPE_THRESHOLD) { hideEventCard(); - cardModeEnabled = false; - localStorage.setItem('cardMode', false); - updateCardToggleButton(); + updateCardToggleButton(false); } return; } @@ -274,9 +276,7 @@ function initEventCard() { const toggleButton = document.getElementById('card-mode-toggle'); updateCardToggleButton(); toggleButton.addEventListener('click', () => { - cardModeEnabled = !cardModeEnabled; - localStorage.setItem('cardMode', cardModeEnabled); - updateCardToggleButton(); + updateCardToggleButton(!cardModeEnabled); if (cardModeEnabled && Events.currentEvent) { showEventCard(Events.currentEvent); } else if (!cardModeEnabled) { From bfdc58ffb929b348519c93529b5471b4f06ae3be Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Sun, 19 Apr 2026 20:10:04 +0000 Subject: [PATCH 4/4] Move show/hide logic into updateCardToggleButton; always require argument Agent-Logs-Url: https://github.com/ProLoser/funcheapmap/sessions/dbeb9231-760a-439b-870b-d2d910d3254a Co-authored-by: ProLoser <67395+ProLoser@users.noreply.github.com> --- map.js | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/map.js b/map.js index 1dc49f6..9ea9e11 100644 --- a/map.js +++ b/map.js @@ -26,14 +26,18 @@ const VELOCITY_THRESHOLD = 0.3; // px/ms const CARD_TRANSITION = 'transform 0.3s cubic-bezier(0.4,0,0.2,1)'; function updateCardToggleButton(enabled) { - if (enabled !== undefined) { - cardModeEnabled = enabled; - localStorage.setItem('cardMode', enabled); - } + cardModeEnabled = enabled; + localStorage.setItem('cardMode', enabled); const button = document.getElementById('card-mode-toggle'); - if (!button) return; - button.classList.toggle('active', cardModeEnabled); - button.title = cardModeEnabled ? 'Disable floating cards' : 'Enable floating cards'; + if (button) { + button.classList.toggle('active', cardModeEnabled); + button.title = cardModeEnabled ? 'Disable floating cards' : 'Enable floating cards'; + } + if (enabled && Events.currentEvent) { + showEventCard(Events.currentEvent); + } else if (!enabled) { + hideEventCard(); + } } function buildCardContent(container, event) { @@ -225,7 +229,6 @@ function initEventCard() { if (gestureAxis === 'vertical') { if (deltaY > SWIPE_THRESHOLD) { - hideEventCard(); updateCardToggleButton(false); } return; @@ -274,14 +277,9 @@ function initEventCard() { }); const toggleButton = document.getElementById('card-mode-toggle'); - updateCardToggleButton(); + updateCardToggleButton(cardModeEnabled); toggleButton.addEventListener('click', () => { updateCardToggleButton(!cardModeEnabled); - if (cardModeEnabled && Events.currentEvent) { - showEventCard(Events.currentEvent); - } else if (!cardModeEnabled) { - hideEventCard(); - } }); }