Skip to content

Commit

Permalink
simplify pointer event
Browse files Browse the repository at this point in the history
  • Loading branch information
sprocketc committed Sep 8, 2024
1 parent 9813cc3 commit e88b571
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 27 deletions.
7 changes: 2 additions & 5 deletions src/renderer/app/events.cljs
Original file line number Diff line number Diff line change
Expand Up @@ -126,12 +126,9 @@
(fn [{:keys [db]}
[_ {:as e :keys [data-transfer pointer-pos]}]]
{:db (h/pointer-handler db e)
:fx [(case (:type e)
:drop
:fx [(when (= (:type e) :drop)
[::fx/data-transfer [(frame.h/adjust-pointer-pos db pointer-pos)
data-transfer]]

nil)]}))
data-transfer]])]}))

(rf/reg-event-db
::keyboard-event
Expand Down
44 changes: 22 additions & 22 deletions src/renderer/app/handlers.cljs
Original file line number Diff line number Diff line change
Expand Up @@ -42,36 +42,36 @@
(let [adjusted-pointer-pos (frame.h/adjust-pointer-pos db pointer-pos)]
(case (:type e)
:pointermove
(if (= buttons :right)
db
(-> (if pointer-offset
(if (pointer/significant-drag? pointer-pos pointer-offset drag-threshold)
(cond-> db
(not= tool :pan)
(frame.h/pan-out-of-canvas dom-rect pointer-pos pointer-offset)

(not drag?)
(-> (tool.hierarchy/drag-start e)
(add-fx [::fx/set-pointer-capture (:pointer-id e)])
(assoc :drag? true))

:always
(tool.hierarchy/drag e))
db)
(tool.hierarchy/pointer-move db e))
(assoc :pointer-pos pointer-pos
:adjusted-pointer-pos adjusted-pointer-pos)))
(-> (if pointer-offset
(if (pointer/significant-drag? pointer-pos pointer-offset drag-threshold)
(cond-> db
(not= tool :pan)
(frame.h/pan-out-of-canvas dom-rect pointer-pos pointer-offset)

(not drag?)
(-> (tool.hierarchy/drag-start e)
(add-fx [::fx/set-pointer-capture (:pointer-id e)])
(assoc :drag? true))

:always
(tool.hierarchy/drag e))
db)
(tool.hierarchy/pointer-move db e))
(assoc :pointer-pos pointer-pos
:adjusted-pointer-pos adjusted-pointer-pos))

:pointerdown
(cond-> db
(= button :middle)
(-> (assoc :primary-tool tool)
(set-tool :pan))

(not= buttons :right)
(assoc :pointer-offset pointer-pos
:adjusted-pointer-offset adjusted-pointer-pos)

:always
(-> (tool.hierarchy/pointer-down e)
(assoc :pointer-offset pointer-pos
:adjusted-pointer-offset adjusted-pointer-pos)))
(tool.hierarchy/pointer-down e))

:pointerup
(cond-> (if drag?
Expand Down

0 comments on commit e88b571

Please sign in to comment.