From: Fred Sundvik <fsundvik@gmail.com>
Date: Wed, 18 May 2016 06:03:42 +0000 (+0300)
Subject: Add callback function for emulator drawing
X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=94519e387a85e3b4ab72bd7d837ff590cc690eb9;p=qmk_firmware.git

Add callback function for emulator drawing
---

diff --git a/visualizer.c b/visualizer.c
index bbb00debc..607a64566 100644
--- a/visualizer.c
+++ b/visualizer.c
@@ -413,6 +413,10 @@ static DECLARE_THREAD_FUNCTION(visualizerThread, arg) {
 #ifdef LED_ENABLE
         gdispGFlush(LED_DISPLAY);
 #endif
+
+#if EMULATOR
+        draw_emulator();
+#endif
         // The animation can enable the visualizer
         // And we might need to update the state when that happens
         // so don't sleep
diff --git a/visualizer.h b/visualizer.h
index 4d6a61dda..a3828e35f 100644
--- a/visualizer.h
+++ b/visualizer.h
@@ -50,6 +50,11 @@ void visualizer_resume(void);
 GDisplay* get_lcd_display(void);
 GDisplay* get_led_display(void);
 
+// For emulator builds, this function need to be implemented
+#if EMULATOR
+void draw_emulator(void);
+#endif
+
 // If you need support for more than 16 keyframes per animation, you can change this
 #define MAX_VISUALIZER_KEY_FRAMES 16
 
@@ -134,7 +139,7 @@ bool keyframe_enable_lcd_and_backlight(keyframe_animation_t* animation, visualiz
 // directly from the initalize_user_visualizer function (the animation can be null)
 bool enable_visualization(keyframe_animation_t* animation, visualizer_state_t* state);
 
-// These two functions have to be implemented by the user
+// These functions have to be implemented by the user
 void initialize_user_visualizer(visualizer_state_t* state);
 void update_user_visualizer_state(visualizer_state_t* state);
 void user_visualizer_suspend(visualizer_state_t* state);