From 653e0b5669e1d7ed132be9c582bdd0ed4a7e26e1 Mon Sep 17 00:00:00 2001 From: Andrey Antukh Date: Sun, 26 Feb 2017 20:46:19 +0100 Subject: [PATCH] Add better impl for util timers. --- frontend/src/uxbox/util/timers.cljs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/frontend/src/uxbox/util/timers.cljs b/frontend/src/uxbox/util/timers.cljs index 806ef5dea..7e231de83 100644 --- a/frontend/src/uxbox/util/timers.cljs +++ b/frontend/src/uxbox/util/timers.cljs @@ -4,8 +4,19 @@ ;; ;; Copyright (c) 2016-2017 Andrey Antukh -(ns uxbox.util.timers) +(ns uxbox.util.timers + (:require [beicon.core :as rx])) (defn schedule [ms func] - (js/setTimeout func ms)) + (let [sem (js/setTimeout #(func) ms)] + (reify rx/ICancellable + (-cancel [_] + (js/clearTimeout sem))))) + +(defn interval + [ms func] + (let [sem (js/setInterval #(func) ms)] + (reify rx/ICancellable + (-cancel [_] + (js/clearInterval sem)))))