summaryrefslogtreecommitdiff
path: root/apps/plugins/imageviewer/imageviewer.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/imageviewer/imageviewer.c')
-rw-r--r--apps/plugins/imageviewer/imageviewer.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/apps/plugins/imageviewer/imageviewer.c b/apps/plugins/imageviewer/imageviewer.c
index a2b3bb680a..0dd140d1ab 100644
--- a/apps/plugins/imageviewer/imageviewer.c
+++ b/apps/plugins/imageviewer/imageviewer.c
@@ -915,7 +915,8 @@ static int load_and_show(char* filename, struct image_info *info)
915 rb->lcd_update(); 915 rb->lcd_update();
916 } 916 }
917 917
918 mylcd_ub_clear_display(); 918 if (frame == 0)
919 mylcd_ub_clear_display();
919 imgdec->draw_image_rect(info, 0, 0, 920 imgdec->draw_image_rect(info, 0, 0,
920 info->width-info->x, info->height-info->y); 921 info->width-info->x, info->height-info->y);
921 mylcd_ub_update(); 922 mylcd_ub_update();
@@ -956,6 +957,7 @@ static int load_and_show(char* filename, struct image_info *info)
956 get_view(info, &cx, &cy); 957 get_view(info, &cx, &cy);
957 cx /= zoom; /* prepare the position in the new image */ 958 cx /= zoom; /* prepare the position in the new image */
958 cy /= zoom; 959 cy /= zoom;
960 mylcd_ub_clear_display();
959 } 961 }
960 else 962 else
961 continue; 963 continue;
@@ -969,12 +971,14 @@ static int load_and_show(char* filename, struct image_info *info)
969 } 971 }
970 972
971#ifdef USEGSLIB 973#ifdef USEGSLIB
972 grey_show(false); /* switch off overlay */ 974 if (info->frames_count <= 1)
975 grey_show(false); /* switch off overlay */
973#endif 976#endif
974 rb->lcd_clear_display(); 977 rb->lcd_clear_display();
975 } 978 }
976 while (status > PLUGIN_OTHER); 979 while (status > PLUGIN_OTHER);
977#ifdef USEGSLIB 980#ifdef USEGSLIB
981 grey_show(false); /* switch off overlay */
978 rb->lcd_update(); 982 rb->lcd_update();
979#endif 983#endif
980 return status; 984 return status;