From 3849bcfb400f266376b7250a6c44a739bcb34b20 Mon Sep 17 00:00:00 2001 From: Shane Kilkelly Date: Fri, 25 May 2018 10:36:20 +0100 Subject: [PATCH] Add a `waitFor` helper to the ide object --- services/web/public/coffee/ide.coffee | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/services/web/public/coffee/ide.coffee b/services/web/public/coffee/ide.coffee index 4f2d914135..3ddf9521b6 100644 --- a/services/web/public/coffee/ide.coffee +++ b/services/web/public/coffee/ide.coffee @@ -229,4 +229,18 @@ define [ ide.$scope.project.publicAccesLevel = data.newAccessLevel $scope.$digest() + ide.waitFor = (fn, callback, timeout) -> + sleepTime = 500 + iterationLimit = Math.floor(timeout / sleepTime) + iterations = 0 + do tryIteration = () -> + if iterations > iterationLimit + return + iterations += 1 + result = fn() + if result? + callback(result) + else + setTimeout(tryIteration, sleepTime) + angular.bootstrap(document.body, ["SharelatexApp"])