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