             (remove-old-markers owner)
             (remove-old-renderers owner)
             (gen-new-renderers owner transit-journey show-vehicle-icons)
-            (gen-new-markers owner transit-journey)))
+            (gen-new-markers owner transit-journey)
+            (fit-map-to-markers (om/get-state owner :google-map) (om/get-state owner :all-markers))))
         (if-not (= (-> city :city :data :center :coordinates) (-> prev-city :city :data :center :coordinates))
           (.setCenter (om/get-state owner :google-map) (geojson->goog-latlng (-> current-city :city :data :center :coordinates))))))
 

                                              :strokeOpacity 0.6
                                              :geodesic true
                                              :strokeWeight (nth widths index)}
                        :suppressInfoWindows true
                        :suppressMarkers true}) ]
    (.setMap renderer google-map)

          (om/set-state! owner :google-map google-map)
          (om/set-state! owner :google-directions-service google-directions-service)
          (gen-new-renderers owner transit-journey show-vehicle-icons)
          (gen-new-markers owner transit-journey)
          (fit-map-to-markers (om/get-state owner :google-map) (om/get-state owner :all-markers)))))

    ;; recompute the route upon journey update
    om/IDidUpdate
