0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-03-12 07:41:43 -05:00

🐛 Fix problem with booleans empty selrect

This commit is contained in:
alonso.torres 2021-10-05 22:05:19 +02:00
parent cbee65671c
commit 5a8ce52105
3 changed files with 18 additions and 3 deletions

View file

@ -7,6 +7,8 @@
(ns app.common.geom.shapes.bool
(:require
[app.common.geom.shapes.path :as gsp]
[app.common.geom.shapes.rect :as gpr]
[app.common.geom.shapes.transforms :as gtr]
[app.common.path.bool :as pb]
[app.common.path.shapes-to-path :as stp]))
@ -19,7 +21,12 @@
(mapv :content)
(pb/content-bool (:bool-type shape)))
[points selrect] (gsp/content->points+selrect shape content)]
[points selrect]
(if (empty? content)
(let [selrect (gtr/selection-rect children)
points (gpr/rect->points selrect)]
[points selrect])
(gsp/content->points+selrect shape content))]
(-> shape
(assoc :selrect selrect)
(assoc :points points))))

View file

@ -18,7 +18,6 @@
[app.common.spec :as us]
[app.common.text :as txt]))
;; --- Relative Movement
(defn- move-selrect [selrect {dx :x dy :y}]
@ -681,3 +680,12 @@
(assoc :resize-transform (:resize-transform parent-modifiers)
:resize-transform-inverse (:resize-transform-inverse parent-modifiers)))))
(defn selection-rect
"Returns a rect that contains all the shapes and is aware of the
rotation of each shape. Mainly used for multiple selection."
[shapes]
(->> shapes
(transform-shape)
(map (comp gpr/points->selrect :points))
(gpr/join-selrects)))

View file

@ -79,7 +79,7 @@
text-shapes
(->> objects
(filter (fn [[id shape]] (= :text (:type shape))))
(filter (fn [[_ shape]] (= :text (:type shape))))
(mapv second))]
(mf/use-effect