diff --git a/src/quo/foundations/colors.cljs b/src/quo/foundations/colors.cljs index cc7b14450c..f86f2a23b9 100644 --- a/src/quo/foundations/colors.cljs +++ b/src/quo/foundations/colors.cljs @@ -10,29 +10,32 @@ (defn alpha [value opacity] (when value - (if (string/starts-with? value "#") - (let [hex (string/replace value #"#" "") - r (js/parseInt (subs hex 0 2) 16) - g (js/parseInt (subs hex 2 4) 16) - b (js/parseInt (subs hex 4 6) 16)] - (str "rgba(" r "," g "," b "," opacity ")")) - (let [rgb (string/split value #",")] - (str (string/join "," (butlast rgb)) "," opacity ")"))))) + ;; https://github.com/status-im/status-mobile/pull/20950#issuecomment-2328228947 + (let [opacity (if (zero? opacity) 0.002 opacity)] + (if (string/starts-with? value "#") + (let [hex (string/replace value #"#" "") + r (js/parseInt (subs hex 0 2) 16) + g (js/parseInt (subs hex 2 4) 16) + b (js/parseInt (subs hex 4 6) 16)] + (str "rgba(" r "," g "," b "," opacity ")")) + (let [rgb (string/split value #",")] + (str (string/join "," (butlast rgb)) "," opacity ")")))))) (defn- alpha-opaque [value opacity] (when value - (if (string/starts-with? value "#") - (let [hex (string/replace value #"#" "") - r (- 255 (* opacity (- 255 (js/parseInt (subs hex 0 2) 16)))) - g (- 255 (* opacity (- 255 (js/parseInt (subs hex 2 4) 16)))) - b (- 255 (* opacity (- 255 (js/parseInt (subs hex 4 6) 16))))] - (str "rgb(" r "," g "," b ")")) - (let [rgb (string/split value #",") - r (- 255 (* opacity (- 255 (get rgb 0)))) - g (- 255 (* opacity (- 255 (get rgb 1)))) - b (- 255 (* opacity (- 255 (get rgb 2))))] - (str "rgb(" r "," g "," b ")"))))) + (let [opacity (if (zero? opacity) 0.002 opacity)] + (if (string/starts-with? value "#") + (let [hex (string/replace value #"#" "") + r (- 255 (* opacity (- 255 (js/parseInt (subs hex 0 2) 16)))) + g (- 255 (* opacity (- 255 (js/parseInt (subs hex 2 4) 16)))) + b (- 255 (* opacity (- 255 (js/parseInt (subs hex 4 6) 16))))] + (str "rgb(" r "," g "," b ")")) + (let [rgb (string/split value #",") + r (- 255 (* opacity (- 255 (get rgb 0)))) + g (- 255 (* opacity (- 255 (get rgb 1)))) + b (- 255 (* opacity (- 255 (get rgb 2))))] + (str "rgb(" r "," g "," b ")")))))) (def theme-alpha (memoize