mirror of
https://github.com/penpot/penpot.git
synced 2026-09-11 22:49:30 +00:00
✨ Make theme toggle skip "system" theme
This commit is contained in:
parent
d6e0001ac4
commit
d2d39aad30
@ -21,6 +21,7 @@
|
|||||||
[app.plugins.register :as plugins.register]
|
[app.plugins.register :as plugins.register]
|
||||||
[app.util.i18n :as i18n :refer [tr]]
|
[app.util.i18n :as i18n :refer [tr]]
|
||||||
[app.util.storage :as storage]
|
[app.util.storage :as storage]
|
||||||
|
[app.util.theme :as theme]
|
||||||
[beicon.v2.core :as rx]
|
[beicon.v2.core :as rx]
|
||||||
[potok.v2.core :as ptk]))
|
[potok.v2.core :as ptk]))
|
||||||
|
|
||||||
@ -160,11 +161,12 @@
|
|||||||
(update [_ state]
|
(update [_ state]
|
||||||
(update-in state [:profile :theme]
|
(update-in state [:profile :theme]
|
||||||
(fn [current]
|
(fn [current]
|
||||||
(case current
|
(let [current (if (= current "system")
|
||||||
"dark" "light"
|
(theme/get-system-theme)
|
||||||
"light" "system"
|
current)]
|
||||||
"system" "dark"
|
(case current
|
||||||
"default"))))
|
"dark" "light"
|
||||||
|
"light" "dark")))))
|
||||||
|
|
||||||
ptk/WatchEvent
|
ptk/WatchEvent
|
||||||
(watch [it state _]
|
(watch [it state _]
|
||||||
|
|||||||
@ -16,6 +16,12 @@
|
|||||||
|
|
||||||
(def ^:const default "dark")
|
(def ^:const default "dark")
|
||||||
|
|
||||||
|
(defn get-system-theme
|
||||||
|
[]
|
||||||
|
(if ^boolean (.-matches color-scheme-media-query)
|
||||||
|
"dark"
|
||||||
|
"light"))
|
||||||
|
|
||||||
(defn- set-color-scheme
|
(defn- set-color-scheme
|
||||||
[^string color]
|
[^string color]
|
||||||
|
|
||||||
@ -26,7 +32,7 @@
|
|||||||
|
|
||||||
(defn use-initialize
|
(defn use-initialize
|
||||||
[{profile-theme :theme}]
|
[{profile-theme :theme}]
|
||||||
(let [system-theme* (mf/use-state #(if (.-matches color-scheme-media-query) "dark" "light"))
|
(let [system-theme* (mf/use-state get-system-theme)
|
||||||
system-theme (deref system-theme*)]
|
system-theme (deref system-theme*)]
|
||||||
|
|
||||||
(mf/with-effect []
|
(mf/with-effect []
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user