From 2a30c233348f6f751ccba9eb9bdd582b77730aed Mon Sep 17 00:00:00 2001 From: Eva Date: Fri, 20 Jan 2023 11:15:14 +0100 Subject: [PATCH 1/3] :bug: Fix hidden shapes inside hidden group --- CHANGES.md | 1 + frontend/src/app/main/data/workspace/shapes.cljs | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 33750acfb..23a8bf402 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -46,6 +46,7 @@ - Fix justified text is stretched [Github #2539](https://github.com/penpot/penpot/issues/2539) - Fix mousewheel on viewer inspector [Taiga #4221](https://tree.taiga.io/project/penpot/issue/4221) - Fix path edition activated on boards [Taiga #4105](https://tree.taiga.io/project/penpot/issue/4105) +- Fix hidden layers inside groups become visible after the group visibility is changed[Taiga #4710](https://tree.taiga.io/project/penpot/issue/4710) ## 1.16.2-beta diff --git a/frontend/src/app/main/data/workspace/shapes.cljs b/frontend/src/app/main/data/workspace/shapes.cljs index a8551942d..a87f4fbb5 100644 --- a/frontend/src/app/main/data/workspace/shapes.cljs +++ b/frontend/src/app/main/data/workspace/shapes.cljs @@ -408,7 +408,11 @@ (boolean? blocked) (assoc :blocked blocked) (boolean? hidden) (assoc :hidden hidden))) objects (wsh/lookup-page-objects state) - ids (into ids (->> ids (mapcat #(cph/get-children-ids objects %))))] + ;; We have change only the hidden behaviour, to hide only the + ;; selected shape, block behaviour remains the same. + ids (if (boolean? blocked) + (into ids (->> ids (mapcat #(cph/get-children-ids objects %)))) + ids)] (rx/of (dch/update-shapes ids update-fn)))))) (defn toggle-visibility-selected From c353d3703bc4c2889685c0908565ebe29c4b67bc Mon Sep 17 00:00:00 2001 From: Eva Date: Fri, 20 Jan 2023 12:39:07 +0100 Subject: [PATCH 2/3] :sparkles: Add some accessibility on shortcuts panel --- CHANGES.md | 1 + .../styles/main/partials/sidebar.scss | 12 +++++-- .../main/ui/workspace/sidebar/shortcuts.cljs | 32 ++++++++++++++++--- 3 files changed, 38 insertions(+), 7 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 23a8bf402..795ffd044 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -9,6 +9,7 @@ - Show board miniature in manual overlay setting [Taiga #4475](https://tree.taiga.io/project/penpot/issue/4475) - Handoff visual improvements [Taiga #3124](https://tree.taiga.io/project/penpot/us/3124) - Dynamic alignment only in sight [Github 1971](https://github.com/penpot/penpot/issues/1971) +- Add some accessibility to shortcut panel [Taiga #4713](https://tree.taiga.io/project/penpot/issue/4713) ### :bug: Bugs fixed diff --git a/frontend/resources/styles/main/partials/sidebar.scss b/frontend/resources/styles/main/partials/sidebar.scss index ffae5942e..c5765c444 100644 --- a/frontend/resources/styles/main/partials/sidebar.scss +++ b/frontend/resources/styles/main/partials/sidebar.scss @@ -433,8 +433,16 @@ button.collapse-sidebar { display: flex; justify-content: center; align-items: center; - &.close { - transform: rotate(45deg); + border: none; + background-color: transparent; + padding: 0; + .icon { + display: flex; + justify-content: center; + align-items: center; + &.close { + transform: rotate(45deg); + } } } svg { diff --git a/frontend/src/app/main/ui/workspace/sidebar/shortcuts.cljs b/frontend/src/app/main/ui/workspace/sidebar/shortcuts.cljs index 4a2a6d6fc..853c49c9a 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/shortcuts.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/shortcuts.cljs @@ -9,6 +9,7 @@ [app.common.data :as d] [app.config :as cf] [app.main.data.dashboard.shortcuts] + [app.main.data.events :as ev] [app.main.data.shortcuts :as ds] [app.main.data.viewer.shortcuts] [app.main.data.workspace :as dw] @@ -18,6 +19,7 @@ [app.main.ui.icons :as i] [app.util.dom :as dom] [app.util.i18n :refer [tr]] + [app.util.keyboard :as kbd] [app.util.strings :refer [matches-search]] [clojure.set :as set] [clojure.string] @@ -450,7 +452,24 @@ (mf/use-callback (fn [_] (reset! open-sections [[1]]) - (reset! filter-term "")))] + (reset! filter-term ""))) + + manage-key-down + (mf/use-callback + (fn [event] + (when (kbd/esc? event) + (st/emit! (-> (dw/toggle-layout-flag :shortcuts) + (vary-meta assoc ::ev/origin "shortcuts-panel")))))) + + on-key-down + (mf/use-callback + (fn [event] + (when (kbd/enter? event) + (on-search-clear-click) + (dom/focus! (dom/get-element "shortcut-search")))))] + + (mf/with-effect [] + (dom/focus! (dom/get-element "shortcut-search"))) [:div.shortcuts [:div.shortcuts-header @@ -465,13 +484,16 @@ :type "text" :value @filter-term :on-change on-search-term-change - :auto-complete "off"}] + :auto-complete "off" + :on-key-down manage-key-down}] (if (str/empty? @filter-term) [:span.icon-wrapper i/search] - [:span.icon-wrapper.close - {:on-click on-search-clear-click} - i/close])]] + [:button.icon-wrapper + {:on-click on-search-clear-click + :on-key-down on-key-down} + [:span.icon.close + i/close]])]] (if match-any? [:div.shortcut-list (for [section all-shortcuts] From f0d74ab63e640b6e1b52e488227f412f1dd93fae Mon Sep 17 00:00:00 2001 From: Eva Date: Fri, 20 Jan 2023 14:28:40 +0100 Subject: [PATCH 3/3] :bug: Fix hsla information in viewer --- CHANGES.md | 1 + .../main/ui/viewer/inspect/attributes/common.cljs | 5 +++-- frontend/src/app/util/color.cljs | 15 ++++++++++++--- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index 795ffd044..1f9546d67 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -48,6 +48,7 @@ - Fix mousewheel on viewer inspector [Taiga #4221](https://tree.taiga.io/project/penpot/issue/4221) - Fix path edition activated on boards [Taiga #4105](https://tree.taiga.io/project/penpot/issue/4105) - Fix hidden layers inside groups become visible after the group visibility is changed[Taiga #4710](https://tree.taiga.io/project/penpot/issue/4710) +- Fix format of HSLA color on viewer [Taiga #4393](https://tree.taiga.io/project/penpot/issue/4393) ## 1.16.2-beta diff --git a/frontend/src/app/main/ui/viewer/inspect/attributes/common.cljs b/frontend/src/app/main/ui/viewer/inspect/attributes/common.cljs index cd3b7e180..76e593f4c 100644 --- a/frontend/src/app/main/ui/viewer/inspect/attributes/common.cljs +++ b/frontend/src/app/main/ui/viewer/inspect/attributes/common.cljs @@ -60,8 +60,9 @@ (case format :rgba (let [[r g b a] (uc/hex->rgba (:color color) (:opacity color))] [:div (str/fmt "%s, %s, %s, %s" r g b a)]) - :hsla (let [[h s l a] (uc/hex->hsla (:color color) (:opacity color))] - [:div (str/fmt "%s, %s, %s, %s" h s l a)]) + :hsla (let [[h s l a] (uc/hex->hsla (:color color) (:opacity color)) + result (uc/format-hsla [h s l a])] + [:div result]) [:* [:& color-name {:color color}] (when-not (:gradient color) [:div (str (* 100 (:opacity color)) "%")])])) diff --git a/frontend/src/app/util/color.cljs b/frontend/src/app/util/color.cljs index 30ee9415e..80f60a41e 100644 --- a/frontend/src/app/util/color.cljs +++ b/frontend/src/app/util/color.cljs @@ -8,6 +8,7 @@ "Color conversion utils." (:require [app.util.object :as obj] + [app.util.strings :as ust] [cuerdas.core :as str] [goog.color :as gcolor])) @@ -55,6 +56,14 @@ (-> (hex->hsl data) (conj opacity))) +(defn format-hsla + [[h s l a]] + (let [precision 2 + rounded-s (* 100 (ust/format-precision s precision)) + rounded-l (* 100 (ust/format-precision l precision))] + + (str/fmt "%s, %s%, %s%, %s" h rounded-s rounded-l a))) + (defn hsl->rgb [[h s l]] (gcolor/hslToRgb h s l)) @@ -116,9 +125,9 @@ stops-css (str/join "," (map parse-stop stops))] - (if (= type :linear) - (str/fmt "linear-gradient(to bottom, %s)" stops-css) - (str/fmt "radial-gradient(circle, %s)" stops-css)))) + (if (= type :linear) + (str/fmt "linear-gradient(to bottom, %s)" stops-css) + (str/fmt "radial-gradient(circle, %s)" stops-css)))) ;; TODO: REMOVE `VALUE` WHEN COLOR IS INTEGRATED (defn color->background [{:keys [color opacity gradient value]}]