    {:app {:name "Informing"
           :version "0.1.0"
           }
-    :cha {:dom-viewport-resize nil
+    :dom {:document-height nil
+          :document-scroll {:x nil :y nil}
+          :viewport {:width nil :height nil}
+          }
+    :ech {:dom-viewport-resize nil
           :env-mouse-down nil
           :env-mouse-move nil
           :env-mouse-up nil
           }
-    :dom {:document-height nil
-          :document-scroll {:x nil :y nil}
-          :viewport {:width nil :height nil}
-          }
     :env {:mouse nil
           :time nil
           }



;; -----------------------------------------------------------------------------
;; Channels

(defn get-channel [k]
  (get-in @omni-state [:cha k]))

(defn swap-channel! [k cha]
  (swap! omni-state assoc-in [:cha k] cha))

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



  (poly/listen-for-viewport-resize! on-dom-viewport-resize))

(defonce listen-for-dom-viewport-resize!
  (poly/listen-take! (get-event-channel :dom-viewport-resize) on-dom-viewport-resize))

(defonce listen-for-dom-window-load!
  (poly/listen! js/window "load" on-dom-window-load))

(defonce listen-for-env-mouse-move!
  (poly/listen-take! (get-event-channel :env-mouse-move) on-env-mouse-move))


;; -----------------------------------------------------------------------------
