 (defn on-dom-window-load [e]
   (mutate-dom-viewport-size! (poly/get-viewport-width) (poly/get-viewport-height)))
 
-(defn on-env-mouse-move [mouse]
-  (mutate-env-mouse! mouse))
+(defn on-env-mouse-down [m]
+  (mutate-env-mouse-down! m))
+
+(defn on-env-mouse-move [m]
+  (mutate-env-mouse-move! m))
+
+(defn on-env-mouse-up [m]
+  (mutate-env-mouse-up! m))
 
 (defn on-env-time-interval []
   (mutate-env-time!))


(defonce setup-event-channels!
  (do
    (swap-event-channel! :dom-viewport-resize
                         (poly/channel-for-viewport-resize!))
    (swap-event-channel! :env-mouse-move
                         (poly/channel-for-mouse-move! js/window))
    true))



          :env-mouse-move nil
          :env-mouse-up nil
          }
    :env {:mouse-down nil
          :mouse-move nil
          :mouse-up nil
          :time nil
          }
    :gui {:click-count 0
