mirror of
https://github.com/penpot/penpot.git
synced 2025-04-16 00:41:25 -05:00
Performane improvements over previous commit.
This commit is contained in:
parent
8c51048f76
commit
b5ba75097f
3 changed files with 14 additions and 21 deletions
|
@ -25,8 +25,7 @@
|
|||
(let [{:keys [id x y width height group]} shape
|
||||
selected (rum/react uusc/selected-shapes-l)
|
||||
selected? (contains? selected id)
|
||||
drawing? (rum/react uusc/drawing-state-l)
|
||||
on-mouse-down #(uusi/on-mouse-down % shape selected drawing?)
|
||||
on-mouse-down #(uusi/on-mouse-down % shape selected)
|
||||
on-mouse-up #(uusi/on-mouse-up % shape)]
|
||||
(html
|
||||
[:g.shape {:class (when selected? "selected")
|
||||
|
|
|
@ -16,14 +16,13 @@
|
|||
;; --- Icon Component
|
||||
|
||||
(defn on-mouse-down
|
||||
[event {:keys [id group] :as shape} selected drawing?]
|
||||
(let [selected? (contains? selected id)]
|
||||
[event {:keys [id group] :as shape} selected]
|
||||
(let [selected? (contains? selected id)
|
||||
drawing? @uusc/drawing-state-l]
|
||||
(when-not (:blocked shape)
|
||||
(cond
|
||||
drawing?
|
||||
nil
|
||||
|
||||
(and group (:locked (ush/resolve-parent shape)))
|
||||
(or drawing?
|
||||
(and group (:locked (ush/resolve-parent shape))))
|
||||
nil
|
||||
|
||||
(and (not selected?) (empty? selected))
|
||||
|
@ -62,9 +61,8 @@
|
|||
[own shape]
|
||||
(let [{:keys [id x y width height group]} shape
|
||||
selected (rum/react uusc/selected-shapes-l)
|
||||
drawing? (rum/react uusc/drawing-state-l)
|
||||
selected? (contains? selected id)
|
||||
on-mouse-down #(on-mouse-down % shape selected drawing?)
|
||||
on-mouse-down #(on-mouse-down % shape selected)
|
||||
on-mouse-up #(on-mouse-up % shape)]
|
||||
(html
|
||||
[:g.shape {:class (when selected? "selected")
|
||||
|
|
|
@ -19,18 +19,15 @@
|
|||
(:import goog.events.EventType))
|
||||
|
||||
(defn on-mouse-down
|
||||
[event own {:keys [id group] :as shape} selected drawing?]
|
||||
[event own {:keys [id group] :as shape} selected]
|
||||
(let [selected? (contains? selected id)
|
||||
local (:rum/local own)]
|
||||
local (:rum/local own)
|
||||
drawing? @uusc/drawing-state-l]
|
||||
(when-not (:blocked shape)
|
||||
(cond
|
||||
drawing?
|
||||
nil
|
||||
|
||||
(:edition @local)
|
||||
nil
|
||||
|
||||
(and group (:locked (ush/resolve-parent shape)))
|
||||
(or drawing?
|
||||
(:edition @local)
|
||||
(and group (:locked (ush/resolve-parent shape))))
|
||||
nil
|
||||
|
||||
(and (not selected?) (empty? selected))
|
||||
|
@ -111,8 +108,7 @@
|
|||
(let [{:keys [id x1 y1 content group]} shape
|
||||
selected (rum/react uusc/selected-shapes-l)
|
||||
selected? (and (contains? selected id) (= (count selected) 1))
|
||||
drawing? (rum/react uusc/drawing-state-l)
|
||||
on-mouse-down #(on-mouse-down % own shape selected drawing?)
|
||||
on-mouse-down #(on-mouse-down % own shape selected)
|
||||
on-mouse-up #(on-mouse-up % shape)
|
||||
local (:rum/local own)]
|
||||
(html
|
||||
|
|
Loading…
Add table
Reference in a new issue