                 :on-click (if (empty? @queue)
                             #(dispatch [:play-track id])
                             #(dispatch [:enqueue-track id]))}
-          [:i
-           {:on-click #(dispatch [:play-track id])
-            :class icons}
-           "play_arrow"]
-          [:i
-           {:on-click #(dispatch [:enqueue-track id])
-            :class icons}
-           "queue_music"]
+          (icon #(dispatch [:play-track id]) "play_arrow")
+          (icon #(dispatch [:enqueue-track id]) "queue_music")
           (p/display track)])])))
 
 (defn composer-list

  (let [paused? (subscribe [:paused?])]
    (fn []
      [:div
       [:i {:on-click #(dispatch [:player-back]) :class icons} "skip_previous"]
       (if @paused?
         [:i {:on-click #(dispatch [:player-play]) :class icons} "play_arrow"]
         [:i {:on-click #(dispatch [:player-pause]) :class icons} "pause"])
       [:i {:on-click #(dispatch [:player-forward]) :class icons} "skip_next"]])))

(defn track-tabs []
  (let [q (subscribe [:track-queue])]

              :let [id (p/id track)]]
         [:div {:key id}
          (when-not (= id (p/id @current-track))
            (icon #(dispatch [:play-track id]) "play_arrow"))
          (icon #(dispatch [:dequeue-track id]) "clear")
          (p/display track)])])))

(defn player-controls
