From 0564d0dd21d873c1b740bbe078e9cb5bb9b70e1f Mon Sep 17 00:00:00 2001 From: Chiara Coetzee Date: Sat, 24 Feb 2024 16:53:57 +0000 Subject: [PATCH] Fix for recent WaniKani font changes In early 2024 WK published an update to how fonts are rendered which broke the old script. This fixes it in a minimal way by adding events to track whether the user is hovering and update the font accordingly. --- Jitai.user.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/Jitai.user.js b/Jitai.user.js index 5dff781..db97050 100644 --- a/Jitai.user.js +++ b/Jitai.user.js @@ -31,6 +31,7 @@ let font_default = getDefaultFont(); let font_randomized = font_default; + let hovering = false; // available fonts let font_pool = { @@ -347,11 +348,9 @@ // show font if (hover_flipped) { - item_element.style.setProperty("--font-family-japanese", font_default); - item_element.style.setProperty("--font-family-japanese-hover", font_randomized); + item_element.style.fontFamily = hovering ? font_randomized : font_default; } else { - item_element.style.setProperty("--font-family-japanese", font_randomized); - item_element.style.setProperty("--font-family-japanese-hover", font_default); + item_element.style.fontFamily = hovering ? font_default : font_randomized; } } @@ -360,9 +359,17 @@ // - normal : randomized font // - hovering: default font let style = document.createElement("style"); - style.appendChild(document.createTextNode(".character-header__characters:hover { font-family: var(--font-family-japanese-hover); }")); - item_element.style.setProperty("--font-family-japanese-hover", font_default); + item_element.style.fontFamily = font_default; document.head.appendChild(style); + + item_element.addEventListener("mouseenter", function() { + hovering = true; + updateRandomFont(false); + }); + item_element.addEventListener("mouseleave", function() { + hovering = false; + updateRandomFont(false); + }); // on answer submission, invert hovering event // - normal : default font