From cf5a0e0bcfa18e0c06d56186e7c9e768501a15ef Mon Sep 17 00:00:00 2001 From: charlie Date: Thu, 18 Apr 2024 12:19:13 +0800 Subject: [PATCH] enhance(dev): just once for the loaded theme event --- src/main/frontend/components/theme.cljs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/frontend/components/theme.cljs b/src/main/frontend/components/theme.cljs index 1ceb62ac3..5ef4e9e8b 100644 --- a/src/main/frontend/components/theme.cljs +++ b/src/main/frontend/components/theme.cljs @@ -32,6 +32,8 @@ {:ref *el :class "top-1/2 -left-1/2 z-[-999]"}])) +(defonce *once-theme-loaded? (volatile! false)) + (rum/defc ^:large-vars/cleanup-todo container [{:keys [route theme accent-color on-click current-repo nfs-granted? db-restoring? settings-open? sidebar-open? system-theme? sidebar-blocks-len onboarding-state preferred-language]} child] @@ -63,8 +65,11 @@ (.setAttribute doc "lang" preferred-language))) (rum/use-effect! - #(js/setTimeout (fn [] (ipc/ipc "theme-loaded")) 100) ; Wait for the theme to be applied - []) + #(js/setTimeout + (fn [] (when-not @*once-theme-loaded? + (ipc/ipc :theme-loaded) + (vreset! *once-theme-loaded? true))) 100) ; Wait for the theme to be applied + []) (rum/use-effect! #(when (and restored-sidebar?