 (def tabs
   (reagent/adapt-react-class
    (fn [props]
-     (let [{:keys [navigate index route state]} (bean props)
+     (let [{:keys [navigate index route state popToTop]} (bean props)
            {:keys [keyboard-shown]
             :or   {keyboard-shown false}} (when platform/android? (rn/use-keyboard))
-           {:keys [bottom]}               (safe-area/use-safe-area)
-           animated-visible               (animated/use-timing-transition
-                                           (main-tab? (keyword route))
-                                           {:duration 150})
-           keyboard-visible               (animated/use-timing-transition
-                                           keyboard-shown
-                                           {:duration 200})]
+           {:keys [bottom]} (safe-area/use-safe-area)
+           animated-visible (animated/use-timing-transition
+                             (main-tab? (keyword route))
+                             {:duration 150})
+           keyboard-visible (animated/use-timing-transition
+                             keyboard-shown
+                             {:duration 200})]
        (reagent/as-element
         [animated/view {:style          (tabs.styles/tabs-wrapper keyboard-shown keyboard-visible)
                         :pointer-events (if keyboard-shown "none" "auto")}


(defn tabbar [props]
  (let [navigate (oget props "navigation" "navigate")
        state    (bean (oget props "state"))
        index    (get state :index)]
    (reagent/as-element
     [tabs {:navigate navigate
            :state    (oget props "state")
            :route    (navigation/get-active-route-name state)
            :index    index}])))

            [tab
             {:icon                icon
              :label               title
              :on-press            #(if (= (str index) (str route-index))
                                      (popToTop)
                                      (let [view-id (navigation/get-index-route-name route-index (bean state))]
                                        (re-frame/dispatch-sync [:screens/tab-will-change view-id])
                                        (reagent/flush)
                                        (navigate (name nav-stack))))
              :accessibility-label accessibility-label
              :count-subscription  count-subscription
              :active?             (= (str index) (str route-index))
