summaryrefslogtreecommitdiff
path: root/riscos/window.c
diff options
context:
space:
mode:
authorMichael Drake <tlsa@netsurf-browser.org>2011-06-30 15:48:07 +0000
committerMichael Drake <tlsa@netsurf-browser.org>2011-06-30 15:48:07 +0000
commiteddae6af0663243a2677674d501f9a87d55798f5 (patch)
tree08562171f870a6b592d624adfbfd0d6fa11fcdcb /riscos/window.c
parenta5dc6b9e6637c85d18510ac6446ee4a8a7955e7b (diff)
downloadnetsurf-eddae6af0663243a2677674d501f9a87d55798f5.tar.gz
netsurf-eddae6af0663243a2677674d501f9a87d55798f5.tar.bz2
Remove plotter table global. Pass a redraw context around redraw functions. Knockout could be handled better. Note: untested on most front ends.
svn path=/trunk/netsurf/; revision=12543
Diffstat (limited to 'riscos/window.c')
-rw-r--r--riscos/window.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/riscos/window.c b/riscos/window.c
index 2a727643e..3caf12cd3 100644
--- a/riscos/window.c
+++ b/riscos/window.c
@@ -1665,6 +1665,10 @@ void ro_gui_window_redraw(wimp_draw *redraw)
osbool more;
struct gui_window *g = (struct gui_window *)ro_gui_wimp_event_get_user_data(redraw->w);
os_error *error;
+ struct redraw_context ctx = {
+ .interactive = true,
+ .plot = &ro_plotters
+ };
/* We can't render locked contents. If the browser window is not
* ready for redraw, do nothing. Else, in the case of buffered
@@ -1672,7 +1676,6 @@ void ro_gui_window_redraw(wimp_draw *redraw)
if (!browser_window_redraw_ready(g->bw))
return;
- plot = ro_plotters;
ro_gui_current_redraw_gui = g;
current_redraw_browser = g->bw;
@@ -1705,7 +1708,7 @@ void ro_gui_window_redraw(wimp_draw *redraw)
if (ro_gui_current_redraw_gui->option.buffer_everything)
ro_gui_buffer_open(redraw);
- browser_window_redraw(g->bw, 0, 0, &clip);
+ browser_window_redraw(g->bw, 0, 0, &clip, &ctx);
if (ro_gui_current_redraw_gui->option.buffer_everything)
ro_gui_buffer_close();
@@ -4317,6 +4320,10 @@ void ro_gui_window_update_boxes(void)
struct update_box *cur;
struct gui_window *g;
const union content_msg_data *data;
+ struct redraw_context ctx = {
+ .interactive = true,
+ .plot = &ro_plotters
+ };
for (cur = pending_updates; cur != NULL; cur = cur->next) {
g = cur->g;
@@ -4344,7 +4351,6 @@ void ro_gui_window_update_boxes(void)
ro_gui_current_redraw_gui = g;
current_redraw_browser = g->bw;
- plot = ro_plotters;
ro_plot_origin_x = update.box.x0 - update.xscroll;
ro_plot_origin_y = update.box.y1 - update.yscroll;
@@ -4357,7 +4363,7 @@ void ro_gui_window_update_boxes(void)
if (use_buffer)
ro_gui_buffer_open(&update);
- browser_window_redraw(g->bw, 0, 0, &clip);
+ browser_window_redraw(g->bw, 0, 0, &clip, &ctx);
if (use_buffer)
ro_gui_buffer_close();