From 1188fd3179b4d9b7ebefd342c314df3cf234920b Mon Sep 17 00:00:00 2001 From: Vincent Sanders Date: Thu, 2 Apr 2009 22:43:57 +0000 Subject: [PATCH] only call os redraw on the area of the widget which has been updated svn path=/trunk/netsurf/; revision=7028 --- framebuffer/fb_tk.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/framebuffer/fb_tk.c b/framebuffer/fb_tk.c index 3b8f4b8d7..ca067783e 100644 --- a/framebuffer/fb_tk.c +++ b/framebuffer/fb_tk.c @@ -311,7 +311,6 @@ fbtk_redraw_widget(fbtk_widget_t *widget) widget->redraw_required = false; //LOG(("OS redrawing %d,%d %d,%d", fb_plot_ctx.x0, fb_plot_ctx.y0, fb_plot_ctx.x1, fb_plot_ctx.y1)); - fb_os_redraw(&fb_plot_ctx); } /* restore clipping rectangle */ @@ -331,6 +330,8 @@ fb_redraw_fill(fbtk_widget_t *widget, void *pw) fb_plot_ctx.x1, fb_plot_ctx.y1, widget->bg); } + + fb_os_redraw(&fb_plot_ctx); return 0; } @@ -367,6 +368,8 @@ fb_redraw_hscroll(fbtk_widget_t *widget, void *pw) fb_plot_ctx.y0 + widget->height - 5, widget->bg); + fb_os_redraw(&fb_plot_ctx); + return 0; } @@ -403,6 +406,8 @@ fb_redraw_vscroll(fbtk_widget_t *widget, void *pw) fb_plot_ctx.y0 + vscroll + vpos - 5, widget->bg); + fb_os_redraw(&fb_plot_ctx); + return 0; } @@ -421,6 +426,9 @@ fb_redraw_bitmap(fbtk_widget_t *widget, void *pw) plot.bitmap(fb_plot_ctx.x0, fb_plot_ctx.y0, widget->width, widget->height, widget->u.bitmap.bitmap, 0, NULL); + + fb_os_redraw(&fb_plot_ctx); + return 0; } @@ -545,6 +553,9 @@ fb_redraw_text(fbtk_widget_t *widget, void *pw) widget->bg, widget->fg); } + + fb_os_redraw(&fb_plot_ctx); + return 0; }