From 7aea8177488a37274c72bab0839ed166382dbe57 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Tue, 30 Sep 2025 18:34:55 +0200 Subject: [PATCH] CLOSES: devcontainers#464 --- features.html | 21 ++++++++++++++++++++- templates.html | 21 ++++++++++++++++++++- 2 files changed, 40 insertions(+), 2 deletions(-) diff --git a/features.html b/features.html index 9e87fe4f..edf3c062 100644 --- a/features.html +++ b/features.html @@ -57,7 +57,7 @@

Available Dev Container Featur const collectionTable = document.getElementById('collectionTable'); const rows = collectionTable.getElementsByTagName('tr'); - searchInput.addEventListener('input', function () { + function performSearch() { const searchValue = searchInput.value.toLowerCase(); for (let i = 1; i < rows.length; i++) { @@ -71,5 +71,24 @@

Available Dev Container Featur rows[i].style.display = 'none'; } } + } + + searchInput.addEventListener('input', function () { + performSearch(); + const url = new URL(window.location); + if (searchInput.value) { + url.searchParams.set('search', searchInput.value); + } else { + url.searchParams.delete('search'); + } + window.history.replaceState({}, '', url); }); + + // Read search parameter from URL on page load + const urlParams = new URLSearchParams(window.location.search); + const searchParam = urlParams.get('search'); + if (searchParam) { + searchInput.value = searchParam; + performSearch(); + } \ No newline at end of file diff --git a/templates.html b/templates.html index a33d1702..14573146 100644 --- a/templates.html +++ b/templates.html @@ -53,7 +53,7 @@

Available Dev Container Templa const collectionTable = document.getElementById('collectionTable'); const rows = collectionTable.getElementsByTagName('tr'); - searchInput.addEventListener('input', function () { + function performSearch() { const searchValue = searchInput.value.toLowerCase(); for (let i = 1; i < rows.length; i++) { @@ -66,5 +66,24 @@

Available Dev Container Templa rows[i].style.display = 'none'; } } + } + + searchInput.addEventListener('input', function () { + performSearch(); + const url = new URL(window.location); + if (searchInput.value) { + url.searchParams.set('search', searchInput.value); + } else { + url.searchParams.delete('search'); + } + window.history.replaceState({}, '', url); }); + + // Read search parameter from URL on page load + const urlParams = new URLSearchParams(window.location.search); + const searchParam = urlParams.get('search'); + if (searchParam) { + searchInput.value = searchParam; + performSearch(); + } \ No newline at end of file