diff options
Diffstat (limited to 'riscos/window.c')
-rw-r--r-- | riscos/window.c | 34 |
1 files changed, 8 insertions, 26 deletions
diff --git a/riscos/window.c b/riscos/window.c index 753c7ca56..620b61b62 100644 --- a/riscos/window.c +++ b/riscos/window.c @@ -518,27 +518,7 @@ void gui_window_redraw(struct gui_window *g, int x0, int y0, int x1, int y1) */ void gui_window_redraw_window(struct gui_window *g) { - wimp_window_info info; - os_error *error; - - assert(g); - - info.w = g->window; - error = xwimp_get_window_info_header_only(&info); - if (error) { - LOG(("xwimp_get_window_info_header_only: 0x%x: %s", - error->errnum, error->errmess)); - warn_user("WimpError", error->errmess); - return; - } - - error = xwimp_force_redraw(g->window, info.extent.x0, info.extent.y0, - info.extent.x1, info.extent.y1); - if (error) { - LOG(("xwimp_force_redraw: 0x%x: %s", - error->errnum, error->errmess)); - warn_user("WimpError", error->errmess); - } + gui_window_redraw(g, 0, -8192, 8192, 8192); } @@ -1394,11 +1374,13 @@ void gui_window_set_scale(struct gui_window *g, float scale) g->option.scale = scale; c = g->bw->current_content; if (c) { - /* todo: we should only call _update for contents that don't have a - * reformat function and thus don't redraw themselves */ - browser_window_update(g->bw, false); - g->reformat_pending = true; - gui_reformat_pending = true; + ro_gui_dialog_update_zoom(g); + if (!content_get_reformat(c)) { + browser_window_update(g->bw, false); + } else { + g->reformat_pending = true; + gui_reformat_pending = true; + } } } |