From e616ea1b8b43ed9849487bd4df5cc3cec4883ce9 Mon Sep 17 00:00:00 2001 From: Niko Date: Wed, 11 Jun 2025 18:27:20 +0200 Subject: [PATCH 1/9] Update navbar --- src/components/Header.astro | 52 +++++++++++++++++++++++-------------- 1 file changed, 32 insertions(+), 20 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index 003cfe4b2..42d0c1436 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -48,28 +48,40 @@ import links from "@data/links.json"; From 511129fa7003c40eaade4e9a913695dbc4aac99d Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 11 Jun 2025 16:28:12 +0000 Subject: [PATCH 2/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/components/Header.astro | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index 42d0c1436..163276ca4 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -51,13 +51,13 @@ import links from "@data/links.json"; document.addEventListener("DOMContentLoaded", function() { var navbar = document.getElementById("navbar") as HTMLElement; if (!navbar) return; - + var prevScrollPos = window.pageYOffset || document.documentElement.scrollTop; var isFocused = false; - + window.addEventListener("scroll", function() { var currentScrollPos = window.pageYOffset || document.documentElement.scrollTop; - + if (!isFocused) { if (prevScrollPos > currentScrollPos) { navbar.style.transform = "translateY(0)"; @@ -65,16 +65,16 @@ document.addEventListener("DOMContentLoaded", function() { navbar.style.transform = "translateY(-100%)"; } } - + prevScrollPos = currentScrollPos; }); - + if ('onfocusin' in navbar) { navbar.addEventListener("focusin", function() { isFocused = true; navbar.style.transform = "translateY(0)"; }); - + navbar.addEventListener("focusout", function() { isFocused = false; var currentScrollPos = window.pageYOffset || document.documentElement.scrollTop; From 85ba03b39d2fafb6b526ba33c9d14bf17684ca9c Mon Sep 17 00:00:00 2001 From: Niko Date: Fri, 13 Jun 2025 20:35:52 +0200 Subject: [PATCH 3/9] Remove focus from navbar --- src/components/Header.astro | 34 ++++++++-------------------------- 1 file changed, 8 insertions(+), 26 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index 163276ca4..e5fdc86ec 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -51,37 +51,19 @@ import links from "@data/links.json"; document.addEventListener("DOMContentLoaded", function() { var navbar = document.getElementById("navbar") as HTMLElement; if (!navbar) return; - + var prevScrollPos = window.pageYOffset || document.documentElement.scrollTop; - var isFocused = false; - + window.addEventListener("scroll", function() { var currentScrollPos = window.pageYOffset || document.documentElement.scrollTop; - - if (!isFocused) { - if (prevScrollPos > currentScrollPos) { - navbar.style.transform = "translateY(0)"; - } else { - navbar.style.transform = "translateY(-100%)"; - } + + if (prevScrollPos > currentScrollPos) { + navbar.style.transform = "translateY(0)"; + } else { + navbar.style.transform = "translateY(-100%)"; } - + prevScrollPos = currentScrollPos; }); - - if ('onfocusin' in navbar) { - navbar.addEventListener("focusin", function() { - isFocused = true; - navbar.style.transform = "translateY(0)"; - }); - - navbar.addEventListener("focusout", function() { - isFocused = false; - var currentScrollPos = window.pageYOffset || document.documentElement.scrollTop; - if (currentScrollPos > prevScrollPos) { - navbar.style.transform = "translateY(-100%)"; - } - }); - } }); From f93796658f55c62a45f6fe8fcde85c982bd2fdb4 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Fri, 13 Jun 2025 18:38:21 +0000 Subject: [PATCH 4/9] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- src/components/Header.astro | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index e5fdc86ec..b4b623777 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -51,18 +51,18 @@ import links from "@data/links.json"; document.addEventListener("DOMContentLoaded", function() { var navbar = document.getElementById("navbar") as HTMLElement; if (!navbar) return; - + var prevScrollPos = window.pageYOffset || document.documentElement.scrollTop; - + window.addEventListener("scroll", function() { var currentScrollPos = window.pageYOffset || document.documentElement.scrollTop; - + if (prevScrollPos > currentScrollPos) { navbar.style.transform = "translateY(0)"; } else { navbar.style.transform = "translateY(-100%)"; } - + prevScrollPos = currentScrollPos; }); }); From 04b094d0bddededd1a9a8cbcc3d3153a50ba6e15 Mon Sep 17 00:00:00 2001 From: Niko Date: Tue, 17 Jun 2025 16:46:47 +0200 Subject: [PATCH 5/9] Update navbar script Debouncing with requestAnimationFrame Minimum scroll threshold Top/bottom boundary handling State tracking Passive scroll listeners Orientation change handling Visibility API handling Smooth transitions --- src/components/Header.astro | 85 ++++++++++++++++++++++++++++++++++--- 1 file changed, 79 insertions(+), 6 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index b4b623777..7d40b184e 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -49,21 +49,94 @@ import links from "@data/links.json"; From 0a5c624056aa9f40e3ec5f44029e002e91ec6e90 Mon Sep 17 00:00:00 2001 From: Niko Date: Tue, 17 Jun 2025 17:18:50 +0200 Subject: [PATCH 6/9] Fix key press --- src/components/Header.astro | 72 ++++++++++++++++++++++++++++++++++--- 1 file changed, 68 insertions(+), 4 deletions(-) diff --git a/src/components/Header.astro b/src/components/Header.astro index 7d40b184e..940249479 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -10,7 +10,6 @@ import links from "@data/links.json";