diff --git a/CHANGES.md b/CHANGES.md index 04cbee7f2..2fe22e810 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -56,6 +56,7 @@ - Fix unexpected layers ungrouping on moving it [Taiga #3932](https://tree.taiga.io/project/penpot/issue/3932) by @andrewzhurov - Fix unexpected exception and behavior on colorpicker with gradients [Taiga #3448](https://tree.taiga.io/project/penpot/issue/3448) - Fix multiselection with shift not working inside a library group [Taiga #3532](https://tree.taiga.io/project/penpot/issue/3532) +- Fix drag and drop graphic assets in groups [Taiga #4002](https://tree.taiga.io/project/penpot/issue/4002) diff --git a/frontend/src/app/main/ui/workspace/sidebar/assets.cljs b/frontend/src/app/main/ui/workspace/sidebar/assets.cljs index aab1c95a6..ed2dcc426 100644 --- a/frontend/src/app/main/ui/workspace/sidebar/assets.cljs +++ b/frontend/src/app/main/ui/workspace/sidebar/assets.cljs @@ -892,6 +892,17 @@ (seq (:colors selected-assets)) (seq (:typographies selected-assets))) + extract-path-if-missing + (fn [graphic] + (let [[path name] (cph/parse-path-name (:name graphic))] + (if (and + (= (:name graphic) name) + (contains? graphic :path)) + graphic + (assoc graphic :path path :name name)))) + + objects (->> objects + (map extract-path-if-missing)) groups (group-assets objects reverse-sort?) @@ -1626,7 +1637,9 @@ extract-path-if-missing (fn [typography] (let [[path name] (cph/parse-path-name (:name typography))] - (if (= (:name typography) name) + (if (and + (= (:name typography) name) + (contains? typography :path)) typography (assoc typography :path path :name name))))