From cf569baabd7dab88f2a67b8d67596036f34d9386 Mon Sep 17 00:00:00 2001 From: Aitor Date: Tue, 16 Jan 2024 15:59:05 +0100 Subject: [PATCH] :bug: Fix colorpicker outside viewport --- .../src/app/main/ui/workspace/colorpicker.cljs | 15 ++++++++++----- .../src/app/main/ui/workspace/colorpicker.scss | 2 +- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/frontend/src/app/main/ui/workspace/colorpicker.cljs b/frontend/src/app/main/ui/workspace/colorpicker.cljs index 1477d2b6b..a30aa9d2e 100644 --- a/frontend/src/app/main/ui/workspace/colorpicker.cljs +++ b/frontend/src/app/main/ui/workspace/colorpicker.cljs @@ -378,17 +378,22 @@ [{vh :height} position x y] (let [;; picker height in pixels h 510 + ;; Checks for overflow outside the viewport height - overflow-fix (max 0 (+ y (- 50) h (- vh))) + ;; overflow-fix (max 0 (+ y (- 50) h (- vh))) + max-y (- vh h) x-pos 325] (cond (or (nil? x) (nil? y)) {:left "auto" :right "16rem" :top "4rem"} - (= position :left) {:left (str (- x x-pos) "px") - :top (str (- y 50 overflow-fix) "px")} + (= position :left) + (if (> y max-y) + {:left (str (- x x-pos) "px") + :bottom "1rem"} + {:left (str (- x x-pos) "px") + :top (str (- y 70) "px")}) :else {:left (str (+ x 80) "px") - :top (str (- y 70 overflow-fix) "px")}))) - + :top (str (- y 70) "px")}))) (mf/defc colorpicker-modal {::mf/register modal/components diff --git a/frontend/src/app/main/ui/workspace/colorpicker.scss b/frontend/src/app/main/ui/workspace/colorpicker.scss index 4abe58b46..1df8b8b41 100644 --- a/frontend/src/app/main/ui/workspace/colorpicker.scss +++ b/frontend/src/app/main/ui/workspace/colorpicker.scss @@ -8,7 +8,7 @@ .colorpicker-tooltip { @extend .modal-background; - top: $s-100; + // top: $s-100; left: calc(10 * $s-140); width: auto; }