From 7aaa33d2e5c2e2473339b9851c606cb8beb46d0c Mon Sep 17 00:00:00 2001 From: Adrian Lees Date: Sat, 19 Aug 2006 19:31:07 +0000 Subject: Fix for knockout rendering of native formats svn path=/trunk/netsurf/; revision=2869 --- riscos/artworks.c | 4 ++++ riscos/draw.c | 4 ++++ riscos/plotters.c | 2 ++ riscos/print.c | 3 ++- riscos/save_draw.c | 3 ++- riscos/sprite.c | 4 ++++ 6 files changed, 18 insertions(+), 2 deletions(-) (limited to 'riscos') diff --git a/riscos/artworks.c b/riscos/artworks.c index ac698f69e..ec3833bed 100644 --- a/riscos/artworks.c +++ b/riscos/artworks.c @@ -18,6 +18,7 @@ #include "oslib/os.h" #include "oslib/wimp.h" #include "netsurf/utils/config.h" +#include "netsurf/desktop/plotters.h" #include "netsurf/content/content.h" #include "netsurf/riscos/artworks.h" #include "netsurf/riscos/gui.h" @@ -214,6 +215,9 @@ bool artworks_redraw(struct content *c, int x, int y, os_trfm matrix; int vals[24]; + if (plot.flush && !plot.flush()) + return false; + /* Scaled image. Transform units (65536*OS units) */ matrix.entries[0][0] = width * 65536 / c->width; matrix.entries[0][1] = 0; diff --git a/riscos/draw.c b/riscos/draw.c index f172de8b5..75caacda2 100644 --- a/riscos/draw.c +++ b/riscos/draw.c @@ -15,6 +15,7 @@ #include #include "oslib/drawfile.h" #include "netsurf/utils/config.h" +#include "netsurf/desktop/plotters.h" #include "netsurf/content/content.h" #include "netsurf/riscos/draw.h" #include "netsurf/riscos/gui.h" @@ -86,6 +87,9 @@ bool draw_redraw(struct content *c, int x, int y, os_error *error; os_trfm matrix; + if (plot.flush && !plot.flush()) + return false; + /* Scaled image. Transform units (65536*OS units) */ matrix.entries[0][0] = width * 65536 / c->width; matrix.entries[0][1] = 0; diff --git a/riscos/plotters.c b/riscos/plotters.c index 00a75e6f5..37c61c921 100644 --- a/riscos/plotters.c +++ b/riscos/plotters.c @@ -21,6 +21,7 @@ #include "netsurf/utils/log.h" + static bool ro_plot_clg(colour c); static bool ro_plot_rectangle(int x0, int y0, int width, int height, int line_width, colour c, bool dotted, bool dashed); @@ -59,6 +60,7 @@ const struct plotter_table ro_plotters = { ro_plot_bitmap, ro_plot_bitmap_tile, NULL, + NULL, NULL }; diff --git a/riscos/print.c b/riscos/print.c index 724576aff..395ae303a 100644 --- a/riscos/print.c +++ b/riscos/print.c @@ -129,7 +129,8 @@ static const struct plotter_table print_fonts_plotters = { print_fonts_plot_bitmap, print_fonts_plot_bitmap_tile, print_fonts_plot_group_start, - print_fonts_plot_group_end + print_fonts_plot_group_end, + NULL }; diff --git a/riscos/save_draw.c b/riscos/save_draw.c index 29b99be6e..012be7b85 100644 --- a/riscos/save_draw.c +++ b/riscos/save_draw.c @@ -63,7 +63,8 @@ const struct plotter_table ro_save_draw_plotters = { ro_save_draw_bitmap, ro_save_draw_bitmap_tile, ro_save_draw_group_start, - ro_save_draw_group_end + ro_save_draw_group_end, + NULL }; struct pencil_diagram *ro_save_draw_diagram; diff --git a/riscos/sprite.c b/riscos/sprite.c index 941e224f0..24a4890a0 100644 --- a/riscos/sprite.c +++ b/riscos/sprite.c @@ -19,6 +19,7 @@ #include #include "oslib/osspriteop.h" #include "netsurf/utils/config.h" +#include "netsurf/desktop/plotters.h" #include "netsurf/content/content.h" #include "netsurf/riscos/gui.h" #include "netsurf/riscos/image.h" @@ -98,6 +99,9 @@ bool sprite_redraw(struct content *c, int x, int y, int clip_x0, int clip_y0, int clip_x1, int clip_y1, float scale, colour background_colour) { + if (plot.flush && !plot.flush()) + return false; + return image_redraw(c->data.sprite.data, ro_plot_origin_x + x * 2, ro_plot_origin_y - y * 2, -- cgit v1.2.3