From 2ea89282f74397fcb4e3ce3f4e209ed20263ddf7 Mon Sep 17 00:00:00 2001 From: Xavier Decuyper Date: Sun, 8 Mar 2026 10:32:29 +0100 Subject: [PATCH 1/5] nav: add polished More dropdown and move Courses under it --- src/site/_includes/layouts/default.html | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/src/site/_includes/layouts/default.html b/src/site/_includes/layouts/default.html index bd043c7c..d8f18c00 100644 --- a/src/site/_includes/layouts/default.html +++ b/src/site/_includes/layouts/default.html @@ -113,10 +113,19 @@ Trivia -
  • - - Courses - +
  • +
    + + More + + +
      +
    • + Courses +
    • + {% comment %}Future entries for this menu: /talks/ and /about/{% endcomment %} +
    +
  • From ef1978047f45dbec827214818f2f779b2cbbf461 Mon Sep 17 00:00:00 2001 From: Xavier Decuyper Date: Sun, 8 Mar 2026 10:37:27 +0100 Subject: [PATCH 2/5] nav: move Trivia into More and refine dropdown styling --- src/site/_includes/layouts/default.html | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/site/_includes/layouts/default.html b/src/site/_includes/layouts/default.html index d8f18c00..830628fe 100644 --- a/src/site/_includes/layouts/default.html +++ b/src/site/_includes/layouts/default.html @@ -108,20 +108,18 @@ Blog -
  • - - Trivia - -
  • -
    - +
    + More -
      +
        +
      • + Trivia +
      • - Courses + Courses
      • {% comment %}Future entries for this menu: /talks/ and /about/{% endcomment %}
      From bbeeffc96c89761dc2f652802c7dd26379a5c65d Mon Sep 17 00:00:00 2001 From: Xavier Decuyper Date: Sun, 8 Mar 2026 10:40:53 +0100 Subject: [PATCH 3/5] nav: fix More menu close behavior and submenu interactions --- src/site/_assets/css/main.css | 8 ++++---- src/site/_assets/js/all.js | 3 ++- src/site/_assets/js/more-menu.js | 23 +++++++++++++++++++++++ src/site/_includes/layouts/default.html | 10 +++++----- 4 files changed, 34 insertions(+), 10 deletions(-) create mode 100644 src/site/_assets/js/more-menu.js diff --git a/src/site/_assets/css/main.css b/src/site/_assets/css/main.css index b20cbe3a..07eee14c 100644 --- a/src/site/_assets/css/main.css +++ b/src/site/_assets/css/main.css @@ -9,18 +9,18 @@ } /* -------------------- Main navigation -------------------- */ - nav li a{ + nav > ul > li > a{ @apply relative } - nav li a:after{ + nav > ul > li > a:after{ content: ''; transition: width .6s cubic-bezier(0.075, 0.82, 0.165, 1); @apply absolute -bottom-2 left-0 h-1 w-0 bg-savjeered dark:bg-savjeered-darkmode } - nav li a:hover:after, - nav li a.active:after{ + nav > ul > li > a:hover:after, + nav > ul > li > a.active:after{ @apply w-5 } diff --git a/src/site/_assets/js/all.js b/src/site/_assets/js/all.js index c26bf8d0..438e14ba 100644 --- a/src/site/_assets/js/all.js +++ b/src/site/_assets/js/all.js @@ -1,4 +1,5 @@ import "./static-youtube-embed.js" import "./disqus-comments.js" import "./responsive-navigation.js" -import "instant.page" \ No newline at end of file +import "instant.page" +import "./more-menu.js" \ No newline at end of file diff --git a/src/site/_assets/js/more-menu.js b/src/site/_assets/js/more-menu.js new file mode 100644 index 00000000..92ade803 --- /dev/null +++ b/src/site/_assets/js/more-menu.js @@ -0,0 +1,23 @@ +document.addEventListener('DOMContentLoaded', function () { + const menu = document.querySelector('#more-menu'); + if (!menu) return; + + document.addEventListener('click', (event) => { + if (!menu.open) return; + if (!menu.contains(event.target)) { + menu.open = false; + } + }); + + document.addEventListener('keydown', (event) => { + if (event.key === 'Escape') { + menu.open = false; + } + }); + + menu.querySelectorAll('[data-more-menu-link]').forEach((link) => { + link.addEventListener('click', () => { + menu.open = false; + }); + }); +}); diff --git a/src/site/_includes/layouts/default.html b/src/site/_includes/layouts/default.html index 830628fe..2dfbeec4 100644 --- a/src/site/_includes/layouts/default.html +++ b/src/site/_includes/layouts/default.html @@ -109,17 +109,17 @@
    • -
      - +
      + More -
        + From 289f7cb6e4633ac54228bb95389e31a6a0a2ce94 Mon Sep 17 00:00:00 2001 From: Xavier Decuyper Date: Sun, 8 Mar 2026 10:44:53 +0100 Subject: [PATCH 4/5] nav: make More dropdown fully opaque and add subtle CSS-only open animation --- src/site/_includes/layouts/default.html | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/site/_includes/layouts/default.html b/src/site/_includes/layouts/default.html index 2dfbeec4..c7944762 100644 --- a/src/site/_includes/layouts/default.html +++ b/src/site/_includes/layouts/default.html @@ -114,12 +114,12 @@ More
      -
        -
      • - Trivia +
          +
        • + Trivia
        • -
        • - Courses +
        • + Courses
        • {% comment %}Future entries for this menu: /talks/ and /about/{% endcomment %}
        From 2d6741a9c36cb33b79742761e8d19ed04d4aac73 Mon Sep 17 00:00:00 2001 From: Xavier Decuyper Date: Sun, 17 May 2026 00:06:09 +0200 Subject: [PATCH 5/5] Fix narrow content width on description pages --- src/site/_includes/layouts/narrow.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/site/_includes/layouts/narrow.html b/src/site/_includes/layouts/narrow.html index 6e00016f..9026fc5b 100644 --- a/src/site/_includes/layouts/narrow.html +++ b/src/site/_includes/layouts/narrow.html @@ -2,6 +2,6 @@ layout: default --- -
        +
        {{ content }}