Compare commits

...

1 Commits

Author SHA1 Message Date
alonso.torres
46a694afdf 🐛 Fix problem with path editor and right click 2025-12-30 11:37:51 +01:00
2 changed files with 23 additions and 21 deletions

View File

@@ -21,6 +21,7 @@
- Fix problem when drag+duplicate a full grid [Taiga #12565](https://tree.taiga.io/project/penpot/issue/12565)
- Fix problem when pasting elements in reverse flex layout [Taiga #12460](https://tree.taiga.io/project/penpot/issue/12460)
- Fix wrong board size presets in Android [Taiga #12339](https://tree.taiga.io/project/penpot/issue/12339)
- Fix problem with path editor and right click [Github #7917](https://github.com/penpot/penpot/issues/7917)
## 2.12.0 (Unreleased)

View File

@@ -65,34 +65,35 @@
on-pointer-down
(fn [event]
(dom/stop-propagation event)
(dom/prevent-default event)
(when (dom/left-mouse? event)
(dom/stop-propagation event)
(dom/prevent-default event)
;; FIXME: revisit this, using meta here breaks equality checks
(when (and is-new (some? (meta position)))
(st/emit! (drp/create-node-at-position (meta position))))
;; FIXME: revisit this, using meta here breaks equality checks
(when (and is-new (some? (meta position)))
(st/emit! (drp/create-node-at-position (meta position))))
(let [is-shift (kbd/shift? event)
is-mod (kbd/mod? event)]
(cond
is-last
(st/emit! (drp/reset-last-handler))
(let [is-shift (kbd/shift? event)
is-mod (kbd/mod? event)]
(cond
is-last
(st/emit! (drp/reset-last-handler))
(and is-move is-mod (not is-curve))
(st/emit! (drp/make-curve position))
(and is-move is-mod (not is-curve))
(st/emit! (drp/make-curve position))
(and is-move is-mod is-curve)
(st/emit! (drp/make-corner position))
(and is-move is-mod is-curve)
(st/emit! (drp/make-corner position))
is-move
;; If we're dragging a selected item we don't change the selection
(st/emit! (drp/start-move-path-point position is-shift))
is-move
;; If we're dragging a selected item we don't change the selection
(st/emit! (drp/start-move-path-point position is-shift))
(and is-draw is-start-path)
(st/emit! (drp/start-path-from-point position))
(and is-draw is-start-path)
(st/emit! (drp/start-path-from-point position))
(and is-draw (not is-start-path))
(st/emit! (drp/close-path-drag-start position)))))]
(and is-draw (not is-start-path))
(st/emit! (drp/close-path-drag-start position))))))]
[:g.path-point
[:circle.path-point