Remove duplicate thread loop

Fixes animation running at 2x speed

Change-Id: Ieec353097b6eee1cf40530e6f4f1e69927d2bc98
diff --git a/wear_ui.cpp b/wear_ui.cpp
index 3550992..bfa7097 100644
--- a/wear_ui.cpp
+++ b/wear_ui.cpp
@@ -184,55 +184,10 @@
     }
 }
 
-// Keeps the progress bar updated, even when the process is otherwise busy.
-void* WearRecoveryUI::progress_thread(void *cookie) {
-    self->progress_loop();
-    return NULL;
-}
-
-void WearRecoveryUI::progress_loop() {
-    double interval = 1.0 / animation_fps;
-    for (;;) {
-        double start = now();
-        pthread_mutex_lock(&updateMutex);
-        bool redraw = false;
-
-        if ((currentIcon == INSTALLING_UPDATE || currentIcon == ERASING)
-                                                            && !show_text) {
-            if (!intro_done) {
-                if (current_frame >= intro_frames - 1) {
-                    intro_done = true;
-                    current_frame = 0;
-                } else {
-                    current_frame++;
-                }
-            } else {
-                current_frame = (current_frame + 1) % loop_frames;
-            }
-            redraw = true;
-        }
-
-        // move the progress bar forward on timed intervals, if configured
-        int duration = progressScopeDuration;
-        if (progressBarType == DETERMINATE && duration > 0) {
-            double elapsed = now() - progressScopeTime;
-            float p = 1.0 * elapsed / duration;
-            if (p > 1.0) p = 1.0;
-            if (p > progress) {
-                progress = p;
-                redraw = true;
-            }
-        }
-
-        if (redraw) update_screen_locked();
-
-        pthread_mutex_unlock(&updateMutex);
-        double end = now();
-        // minimum of 20ms delay between frames
-        double delay = interval - (end-start);
-        if (delay < 0.02) delay = 0.02;
-        usleep((long)(delay * 1000000));
-    }
+// TODO merge drawing routines with screen_ui
+void WearRecoveryUI::update_progress_locked() {
+    draw_screen_locked();
+    gr_flip();
 }
 
 void WearRecoveryUI::InitTextParams() {
@@ -253,9 +208,6 @@
     backgroundIcon[ERASING] = backgroundIcon[INSTALLING_UPDATE];
     LoadBitmap("icon_error", &backgroundIcon[ERROR]);
     backgroundIcon[NO_COMMAND] = backgroundIcon[ERROR];
-
-    pthread_create(&progress_t, NULL, progress_thread, NULL);
-
 }
 
 void WearRecoveryUI::SetStage(int current, int max)
diff --git a/wear_ui.h b/wear_ui.h
index dadf324..9351d41 100644
--- a/wear_ui.h
+++ b/wear_ui.h
@@ -54,6 +54,8 @@
 
     void InitTextParams() override;
 
+    void update_progress_locked() override;
+
     void PrintV(const char*, bool, va_list) override;
 
   private:
@@ -74,8 +76,6 @@
     void draw_screen_locked() override;
     void draw_progress_locked();
 
-    static void* progress_thread(void* cookie);
-    void progress_loop();
     void PutChar(char);
     void ClearText();
 };