       {:opts default-map-opts
        :gmap nil
        :bounds nil
+       :info-window (maps/Maps.InfoWindow.)
+       :data-click-ch (chan)
        :kill-ch (chan)})
     om/IDisplayName (display-name [_] "Maps View")
     om/IDidMount

                             :properties #js {}
                             :geometry (maps/Data.Point.
                                        (maps/Maps.LatLng. (:stop/latitude data)
                                                           (:stop/longitude data)))}})
    om/IWillMount
    (will-mount [_]
      (let [gmap (om/get-state owner :gmap)
            feature-options (om/get-state owner :feature-options)
            feature (.. gmap -data (add feature-options))]
        (om/set-state! owner :feature feature)))
    om/IWillUnmount
    (will-unmount [_]
      (let [{:keys [feature gmap]} (om/get-state owner)]
        (.. gmap -data (remove feature))))
    om/IRender
    (render [_]
      (html [:noscript]))))

      (when-let [kill-ch (:kill-ch (om/get-state owner))]
        (put! kill-ch (js/Date.))))
    om/IRenderState
    (render-state [_ {:keys [gmap info-window data-click-mult] :as state}]
      (let [stops (:stops-search-results data)]
        (html
         (into [:div.maps-viewport [:div.maps-canvas {:ref "gmap"}]]
               (when gmap
                 (om/build-all stop-marker stops {:key :stop/id
                                                  :state {:gmap gmap
                                                          :info-window info-window
                                                          :data-click-mult data-click-mult}}))
               ))))))

(defn map-toolbar-button [{:keys [link control active?]} owner]
