From 5b6fe0c94b87521cd9d2f44b1198cb6a2cf7ab0d Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Tue, 22 Dec 2015 21:33:50 +0200 Subject: [PATCH] Fix transfer-state bug on mouse mixin. --- frontend/uxbox/ui/workspace/base.cljs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/frontend/uxbox/ui/workspace/base.cljs b/frontend/uxbox/ui/workspace/base.cljs index e43648250..30bff4fd9 100644 --- a/frontend/uxbox/ui/workspace/base.cljs +++ b/frontend/uxbox/ui/workspace/base.cljs @@ -85,19 +85,27 @@ y (.-clientY event)] (rx/push! mouse-bus [(- x offset-x) (- y offset-y)])))] - (->> (events/listen js/document EventType.MOUSEMOVE on-mousemove) - (assoc own ::eventkey)))) + (let [key (events/listen js/document EventType.MOUSEMOVE on-mousemove)] + (js/console.log "mouse-mixin-did-mount" key) + (assoc own ::eventkey key)))) (defn- mouse-mixin-will-unmount [own] - (println "mouse-mixin-will-unmount") (let [key (::eventkey own)] + (js/console.log "mouse-mixin-will-unmount" key) (events/unlistenByKey key) (dissoc own ::eventkey))) +(defn- mouse-mixin-transfer-state + [old-own own] + (let [key (::eventkey old-own)] + (js/console.log "mouse-mixin-transfer-state" key) + (assoc own ::eventkey key))) + (def ^:static mouse-mixin {:did-mount mouse-mixin-did-mount - :will-unmount mouse-mixin-will-unmount}) + :will-unmount mouse-mixin-will-unmount + :transfer-state mouse-mixin-transfer-state}) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Constants